gpt4 book ai didi

HTML 净化器 : allow user styling

转载 作者:行者123 更新时间:2023-11-28 01:17:35 31 4
gpt4 key购买 nike

我们的软件最近因允许用户使用 HTML 和 CSS 设计自己的帖子样式的功能而受到 XSS 攻击。是否可以允许用户对自己的论坛帖子进行样式设置,同时清理其他任何内容?

这是我们目前的代码:

require_once 'module/purifier/library/HTMLPurifier.auto.php';
$config = HTMLPurifier_Config::createDefault();

$config->set('Core.Encoding', 'ISO-8859-1');
$config->set('HTML.Doctype', 'HTML 4.01 Transitional');
$config->set('CSS.Trusted', true);
$config->set('HTML.Allowed', 'style,div[id|class]');

$purifier = new HTMLPurifier($config);
...
echo $purifier->purify($uheader); // $uheader contains the CSS code wrapped between "style" tags and a "div" class.

但是,在测试时我仍然看不到应用了我的自定义样式。

更新 1

根据要求,HTML代码:

<img src="test"onerror="alert('XSS TEST')">
<style>
CSS_CODE_HERE
</style>
<div class="mainbar1-1">

我添加“img src”标签只是为了确保正确过滤。

最佳答案

编辑 3: 使用以下设置

$config->set('HTML.AllowedAttributes', '*.style');

关于HTML 净化器 : allow user styling,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35150611/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com