HTML 净化器只关闭未关闭的标签
HTML Purifier only close unclosed tags
使用 HTML PURIFIER Only 关闭未关闭的标签而不移除 XSS 漏洞或其他任何东西?
仅对未关闭的标签使用 HTML PURIFIER(防止删除 类、样式和其他):)
提前谢谢你。
您可以利用 HTML Purifier 内置的 HTML 解析器来执行此操作,方法是简单地覆盖负责处理标记的 "strategy"。操作方法如下:
include_once 'library/HTMLPurifier.auto.php';
$raw = '<a href="onclick:xss()">foo';
class HTMLPurifier_Strategy_Null extends HTMLPurifier_Strategy {
public function execute($tokens, $config, $context) {
return $tokens;
}
}
class HTMLLinter extends HTMLPurifier {
public function __construct($config = null) {
parent::__construct($config);
$this->strategy = new HTMLPurifier_Strategy_Null();
}
}
$linter = new HTMLLinter();
echo $linter->purify($raw);
使用 HTML PURIFIER Only 关闭未关闭的标签而不移除 XSS 漏洞或其他任何东西?
仅对未关闭的标签使用 HTML PURIFIER(防止删除 类、样式和其他):)
提前谢谢你。
您可以利用 HTML Purifier 内置的 HTML 解析器来执行此操作,方法是简单地覆盖负责处理标记的 "strategy"。操作方法如下:
include_once 'library/HTMLPurifier.auto.php';
$raw = '<a href="onclick:xss()">foo';
class HTMLPurifier_Strategy_Null extends HTMLPurifier_Strategy {
public function execute($tokens, $config, $context) {
return $tokens;
}
}
class HTMLLinter extends HTMLPurifier {
public function __construct($config = null) {
parent::__construct($config);
$this->strategy = new HTMLPurifier_Strategy_Null();
}
}
$linter = new HTMLLinter();
echo $linter->purify($raw);