有没有任何好的基于PHP的HTML过滤器可用?

前端之家收集整理的这篇文章主要介绍了有没有任何好的基于PHP的HTML过滤器可用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在一个有 PHP前端的项目.我们非常关心安全性,因为我们有很多用户,是黑客的有吸引力的目标.我们的用户能够提交稍后可以向其他用户显示的HTML格式的内容.这是一个大问题,因为我们对整套XSS攻击很脆弱.我们尽可能地过滤,但各种攻击媒介相当大.

所以,我正在寻找基于PHP的HTML消毒/过滤解决方案.商业解决方案很好(甚至优选).目前,我们正在使用修改后的HTML净化器,但我们对结果不满意.

什么是能够过滤恶意HTML部分的好的库/工具?

很高兴有例如HTML5意识,一旦它在野外可用,这将成为一个安全的噩梦.

更新:
我们正在做一个HTML Purifier的深入配置.看起来我们以前使用的旧框架根本就没有配置它.现在结果看起来好多了

HTML净化器项目

就我个人来说,HTML Purifier project的成绩非常好

它是高度可定制的,并有一个巨大的代码库.唯一的问题是将文件上传到您的服务器.

您确定您的安装没有配置问题吗?由于如果配置正确,净化器根本不应该通过任何HTML标签.

从网站:

HTML Purifier is a standards-compliant
HTML filter library written in PHP.
HTML Purifier will not only remove all
malicIoUs code (better known as
XSS) with a thoroughly audited,
secure yet permissive whitelist,it
will also make sure your documents are
standards compliant,something only
achievable with a comprehensive
knowledge of W3C’s specifications.
Tired of using BBCode due to the
current landscape of deficient or
insecure HTML filters? Have a
WYSIWYG editor but never been able to
use it? Looking for high-quality,
standards-compliant,open-source
components for that application
you’re building? HTML Purifier is for
you!

我写了一篇关于如何使用HTML purifier library with CodeIgniter文章.

也许这将有助于再次尝试:

// load the config and overide defaults as necessary
$config = HTMLPurifier_Config::createDefault();
$config->set('HTML','Doctype','XHTML 1.0 Transitional');
$config->set('HTML','AllowedElements','a,em,blockquote,p,strong,pre,code');
$config->set('HTML','AllowedAttributes','a.href,a.title');
$config->set('HTML','TidyLevel','light');

猜你在找的PHP相关文章