我有一个用ZendFramework编写的大量应用程序。早些时候一切都很好。 至于现在,它经过重新设计并获得了许多新的功能和选项,但我必须从xss中保护这个软件。 变量取自几个来源(webform,Webservices,api等),其中一些应该被转义,一些不被转义。 您如何看待,在不编辑所有(2 000 +)个文件并逃避所有回声的情况下,保护我的网站的最佳方法是什么?
答案 0 :(得分:0)
Zend Framework附带了一个名为“Zend_Filter”的类。这个类有一个“StripTags”过滤器选项,它将从给定的字符串中去除所有标签。
http://framework.zend.com/manual/en/zend.filter.set.html#zend.filter.set.striptags
如果您注意到,如果排除某些内容,即使是条形标签过滤器也不建议用于消毒输入,并且不应该用它来防御XSS攻击。它建议使用Tidy或HTMLPurifier。
我认为HTML Purifier非常易于使用。来自他们的文档网站:
require_once'/path/to/HTMLPurifier.auto.php';
$ config = HTMLPurifier_Config :: createDefault(); $ purifier = new HTMLPurifier($配置); $ clean_html = $ purifier-> purify($ dirty_html);
我希望有所帮助!
干杯!