我正在使用htmlpurifier库来消毒我的传入参数。但它不会过滤空字节(例如%00)。我错过了什么或图书馆不支持它?我会被要求使用reg-ex吗?感谢任何答案。在请求中过滤空字节
编辑:
我使用htmlpurifier与配置选项
$config = HTMLPurifier_Config::createDefault();
$config->set('Core', 'Encoding', "UTF-8");
$config->set('Cache', 'SerializerPath', "/webdirs/htmlpurify");
对于测试字符串
';</script><%00script>alert(845122)</script>
我得到的输出
';<%00script>alert(845122)
指挥官 - 谢谢你的回复。我添加了一些代码,但不确定是否足够。让我知道你是否需要任何其他细节。 – pinaki 2010-07-19 04:50:19
问题是我无法使用html特殊字符作为htmlpurifier的输出。所以我在它上面运行一个html_entity_decode。现在这个值导致了这个问题。他们有什么方法可以告诉htmlpurifier删除脚本标记,即使在两者之间有%00时也是如此? – pinaki 2010-07-20 14:30:46
呃,再来?为什么不能使用HTML特殊字符作为HTML Puriifer的输出?(运行html_entity_decode是做错事的错误方法,并且肯定会导致安全漏洞) – 2010-07-20 17:16:51