baddiservices/safehtml

Safe HTML包通过HTML内容帮助预防XSS漏洞

v0.0.8 2022-05-20 13:35 UTC

This package is auto-updated.

Last update: 2024-09-20 19:04:37 UTC


README

Licence PHP Version Open issues Stars Downloads Twitter Follow

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请求。