使用HTMLPurifier防止跨站攻击(XSS)

原创 2016年08月31日 09:24:22

  在编程开发时安全问题是及其重要的,对于用户提交的数据要进行过滤,XSS就是需要重视的一点,先说一下什么是XSS,简单来说就是用户提交数据(例如发表评论,发表日志)时往Web页面里插入恶意javascript代码例如死循环,疯狂的alert,这还不算还可能会修改页面页面上的html元素(例如登录表单的action),这样当用户浏览该页之时,嵌入其中Web里面的代码会被执行,从而达到用户的特殊目的。

    在使用PHP开发时,可以使用htmlspecialchars将用户提交过来的数据转换使之原样显示,但是这样一来会造成一些弊端,比如用户上传的图片无法显示,html标签不会起作用,没有任何样式。解决方案就是可以使用UBB标签或者自定义标签来实现,要么就是自己写正则去过滤,但是防不胜防,并且这样在处理起来有些繁琐。下载重点介绍一个开源的HTMLPurifier,这是一个符合W3C标准的HTML过滤器,可以生成标准的HTML代码,并且有很多的自定义配置,我更关注的是可以过滤掉javascript代码,有效的防止XSS!

    闲话少说,放出简单代码示例和下载包:

  1. <?php
  2. //引入htmlPurifier去除XSS跨站攻击代码 生成安全的html代码        
  3. require_once('./htmlpurifier/library/HTMLPurifier.includes.php');
  4. $config HTMLPurifier_Config::createDefault();   //创建默认配置
  5. $purifier = new HTMLPurifier($config);   //实例化 并传入默认配置 ($config为空也可)
  6. $safedata $purifier->purify($_POST['content']); //开始过滤 返回过滤后的字符串
  7. echo '<pre>';
  8. print_r($safedata);
  9. ?>
版权声明:本文为博主原创文章,未经博主允许不得转载。

HTMLPurifier laravel 过滤输入文本防止XSS攻击安装使用

Laravel 5本身没有这个能力来防止xss跨站攻击了,但是这它可以使用Purifier 扩展包集成 HTMLPurifier 防止 XSS 跨站攻击。 1、安装 HTMLPurifier 是基...
  • lhw413
  • lhw413
  • 2017年06月28日 14:37
  • 729

Java防止跨站脚本(XSS)注入攻击

XSS攻击的危害性 ,也通过 模拟案例了解了XSS攻击原理 ,这里就介绍一下如何防御XSS攻击。 采用Filter技术,对所有参数都进行过滤,处理方案为: 1. 含有html标签做转义。 2. 含有敏...
  • FYWT98
  • FYWT98
  • 2017年01月14日 10:26
  • 1673

防止SQL注入和XSS跨站攻击代码

http://blog.csdn.net/jbb0403/article/details/36626515原文 这两天用360网站安全检测网站,检测出SQL注入漏洞和XSS跨站攻...
  • ncafei
  • ncafei
  • 2016年12月16日 00:02
  • 623

Laravel 5 中防止 XSS 跨站攻击的例子

1、安装 HTMLPurifier 是基于 PHP 编写的富文本 HTML 过滤器,通常我们可以使用它来防止 XSS 跨站攻击,更多关于 HTMLPurifier的详情请参考其官网:http://h...

VS2008.NET对ashx页面防止跨站攻击(XSS)

首先,给大家贴出解决方案,很简单,只需要加一句代码就OK。 context.Request.ValidateInput();   最近项目中做了一个ashx的页面向其他人提供一个ajax的接口,...
  • bdstjk
  • bdstjk
  • 2012年04月25日 16:16
  • 5459

XSS跨站攻击

  • 2012年11月29日 21:27
  • 709KB
  • 下载

xss.me自动攻击跨站搭建教材

  • 2015年05月01日 13:14
  • 2KB
  • 下载

Spring MVC通过拦截器处理sql注入、跨站XSS攻击风险(jeecg)

最近一个以前做的政府网站被信息安全部门扫描了一下,存在一些风险,发了一份安全报告过来。所以开始对这个网站进行安全性升级。其中主要的几个问题是sql注入风险、跨站xss攻击和链接注入问题。首先,什么是s...
  • Sychel
  • Sychel
  • 2017年10月20日 18:03
  • 482

xss跨站攻击

  • 2015年09月25日 17:27
  • 6.6MB
  • 下载

什么是跨站脚本(XSS)攻击

  • 2009年04月27日 09:16
  • 110KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用HTMLPurifier防止跨站攻击(XSS)
举报原因:
原因补充:

(最多只允许输入30个字)