使用HTMLPurifier防止跨站攻击(XSS)
来源:互联网 发布:女性数据库工程师工资 编辑:程序博客网 时间:2024/05/14 10:46
在编程开发时安全问题是及其重要的,对于用户提交的数据要进行过滤,XSS就是需要重视的一点,先说一下什么是XSS,简单来说就是用户提交数据(例如发表评论,发表日志)时往Web页面里插入恶意javascript代码例如死循环,疯狂的alert,这还不算还可能会修改页面页面上的html元素(例如登录表单的action),这样当用户浏览该页之时,嵌入其中Web里面的代码会被执行,从而达到用户的特殊目的。
在使用PHP开发时,可以使用htmlspecialchars将用户提交过来的数据转换使之原样显示,但是这样一来会造成一些弊端,比如用户上传的图片无法显示,html标签不会起作用,没有任何样式。解决方案就是可以使用UBB标签或者自定义标签来实现,要么就是自己写正则去过滤,但是防不胜防,并且这样在处理起来有些繁琐。下载重点介绍一个开源的HTMLPurifier,这是一个符合W3C标准的HTML过滤器,可以生成标准的HTML代码,并且有很多的自定义配置,我更关注的是可以过滤掉javascript代码,有效的防止XSS!
闲话少说,放出简单代码示例和下载包:
- <?php
- //引入htmlPurifier去除XSS跨站攻击代码 生成安全的html代码
- require_once('./htmlpurifier/library/HTMLPurifier.includes.php');
- $config = HTMLPurifier_Config::createDefault(); //创建默认配置
- $purifier = new HTMLPurifier($config); //实例化 并传入默认配置 ($config为空也可)
- $safedata = $purifier->purify($_POST['content']); //开始过滤 返回过滤后的字符串
- echo '<pre>';
- print_r($safedata);
- ?>
0 0
- 使用HTMLPurifier防止跨站攻击(XSS)
- 使用HTMLPurifier防止跨站攻击(XSS)
- 使用HTMLPurifier防止跨站攻击(XSS)
- HTMLPurifier防止跨站攻击(XSS)
- HTMLPurifier laravel 过滤输入文本防止XSS攻击安装使用
- 【PHP】富文本HTML过滤器:HTMLPurifier使用教程(防止XSS)
- 解析如何防止XSS跨站脚本攻击
- jsp过滤非法字符输入,防止XSS跨站攻击
- 解析如何防止XSS跨站脚本攻击
- 解析如何防止XSS跨站脚本攻击
- 防止SQL注入和XSS跨站攻击代码
- jsp过滤非法字符输入,防止XSS跨站攻击
- php表单防止XSS跨站脚本攻击
- Java防止跨站脚本(XSS)注入攻击
- Laravel 5 中防止 XSS 跨站攻击的例子
- Laravel 5 中防止 XSS 跨站攻击的例子
- Java防止跨站脚本(XSS)注入攻击
- 防止SQL注入和XSS跨站攻击代码
- 蓝鸥Unity开发基础——封装和继承
- JSONObject put,accumulate,element的区别
- java之极光推送
- csgo 物品抽奖平台
- 解决eclipse的new server里tomcat 无法选择问题
- 使用HTMLPurifier防止跨站攻击(XSS)
- Github TOP100 Android开源
- UVa 1400 "Ray, Pass me the dishes!"(线段树)
- Java中Array、List的区别
- iOS消息转发机制
- iText C# 合并PDF文件流,以及A5变A4时内容默认放在最底下的问题的解决方法
- 通过jsonp解决ajax的跨域请求问题
- 小马哥--山寨仿vivo 主板型号 TD528BN 6571芯片机型展示图示与root权限刷机要点
- 正则表达式-jquery