phlib / xss-sanitizer
PHP XSS 清理工具,用于 HTML
2.1.0
2024-06-08 06:18 UTC
Requires
- php: ^7.4 || ^8.0
- ext-mbstring: *
Requires (Dev)
README
PHP XSS 清理工具,用于 HTML
免责声明
使用 HTML Purifier.
此库旨在在不使用宽容列表的情况下解决 XSS 清理问题,因为被清理的 HTML 可能包含非标准或非同寻常的语法(例如电子邮件的 HTML)。
此库还旨在用于有限的使用场景,假设清理后的 HTML 只将在一组有限的受支持浏览器中显示(例如,无需删除 'vbscript:' 代码)。
安装
通过 Composer
$ composer require phlib/xss-sanitizer
用法
创建一个清理器并清理一些输入
$sanitizer = new \Phlib\XssSanitizer\Sanitizer(); $sanitized = $sanitizer->sanitize($htmlInput);
可选地,可以指定要删除的额外标签和/或属性,包括默认值
$removeBlocks = ['xss']; $removeAttributes = ['onwebkittransitionend']; $sanitizer = new \Phlib\XssSanitizer\Sanitizer($removeBlocks, $removeAttributes); $sanitized = $sanitizer->sanitize($htmlInput);
支持的浏览器
此库旨在防止以下浏览器渲染结果 HTML 时出现 XSS 漏洞
- Chrome (40+)
- Firefox (40+)
- Safari (8+)
- IE (10, 11)
- Edge
许可协议
本软件包是免费软件:您可以在免费软件基金会发布的GNU通用公共许可证条款下重新分发和/或修改它,许可证版本为3,或者(根据您的选择)许可证的任何后续版本。
本程序的分发是希望它有用,但没有任何保证;甚至没有关于其适销性或适用于特定目的的隐含保证。有关详细信息,请参阅GNU通用公共许可证。
您应该已随本程序收到一份GNU通用公共许可证副本。如果没有,请参阅https://gnu.ac.cn/licenses/。