如何使用UEditor和如何过滤html代码防止攻击

操作:

1.下载包

2.压缩并复制到/Public/目录下


3.在需要使用的页面导入JS和CSS文件


为textarea添加一个ID:



问题六、在线编辑器中的HTML内容会TP过滤转义,这样效果就失效了:不转义会被攻击


解决办法:有选择性的过滤:只过滤掉危险的JS脚本代码、保留HTML。可以使用htmlpurifier这个开源包来做这个事儿。

实际操作:

1.下载

2.压缩出library目录中的代码到项目根目录 并改名


封装一个公共的方法

// 有选择性的过滤XSS --》 说明:性能非常低-》尽量少用

functionremoveXSS($data)

{

require_once'./HtmlPurifier/HTMLPurifier.auto.php';

$_clean_xss_config= HTMLPurifier_Config::createDefault();

$_clean_xss_config->set('Core.Encoding','UTF-8');

// 设置保留的标签

$_clean_xss_config->set('HTML.Allowed','div,b,strong,i,em,a[href|title],ul,ol,li,p[style],br,span[style],img[width|height|alt|src]');

$_clean_xss_config->set('CSS.AllowedProperties','font,font-size,font-weight,font-style,font-family,text-decoration,padding-left,color,background-color,text-align');

$_clean_xss_config->set('HTML.TargetBlank',TRUE);

$_clean_xss_obj=newHTMLPurifier($_clean_xss_config);

// 执行过滤

return$_clean_xss_obj->purify($data);

}


总结:如果项目中使用了在线编辑器需要配合使用HTMLPurifer实现有选择性的过滤XSS!!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,073评论 19 139
  • 之前积累了XSS 有一段时间,因为目前开始了一件有趣的工程,需要整合非常多的知识,其中Web 安全这一块出现最多的...
    刀背藏身阅读 13,111评论 0 16
  • 对网站发动XSS攻击的方式有很多种,仅仅使用php的一些内置过滤函数是对付不了的,即使你将filter_var,m...
    dreamer_lk阅读 12,263评论 0 6
  • 时间没有改变你的容颜 你如初见时那般美艳 殷红的薄唇轻启 "好久不见” 你递我瓶酒 自饮 相顾无言 多年前把酒言欢...
    鹤起阅读 3,153评论 2 1
  • 那年,情窦初开的我和一个男生相爱了。放寒假,我们鸿雁传书。那天,收到他的来信时,我接了一个电话,把信看了一遍后就放...
    难糊涂阅读 3,229评论 0 0

友情链接更多精彩内容