baddiservices / safehtml
Safe HTML包通过HTML内容帮助预防XSS漏洞
v0.0.8
2022-05-20 13:35 UTC
Requires
- php: >=7.4
- ext-dom: *
- ext-libxml: *
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^9.5
README
Safe HTML包通过HTML内容帮助预防XSS漏洞。
安装
使用Composer安装此包
$ composer require baddiservices/safehtml
示例
验证输入是否为HTML
... use BADDIServices\SafeHTML\SafeHTML; class DemoController extends Controller { /** @var SafeHTML **/ private $safeHTML; public function __construct(SafeHTML $safeHTML) { $this->safeHTML = $safeHTML; } public function IndexAction(Request $request) { $htmlContent = $request->input("content"); if ($this->validate($htmlContent)) { // TODO: is valid HTML continue the process } } }
防止HTML中的XSS攻击
... $sanitizedHTML = $safeHTML->sanitizeHTML($content);
防止文本中的XSS攻击
... $sanitizedText = $safeHTML->sanitize($text);
防止链接中的XSS攻击
... $sanitizedURL = $safeHTML->sanitizeURL($url);
可用方法
黑名单文件示例
您可以查看默认使用的黑名单
{ "tags": { "not-allowed": [], "not-allowed-empty": [] }, "attributes": { "not-allowed": [] } }
异常
贡献
欢迎对包的贡献!
- 报告您发现的任何错误或问题。
- 克隆代码源并提交您的pull请求。