快到国庆了而且今年又是60周年,各个政府网站也都开始对网站的安全、漏洞进行大规模的扫描,很不幸我们公司开发的一个政府网站被扫描出来存在SQL注入、XSS、CSRF等漏洞!网站是几年前采用PHP开发的,由于开发人员本身的安全意识不足,代码编写上不严谨,滥用$_REQUEST类变量等导致网站存在了很多的安全隐患。最近一直都在研究XSS攻击如何防范,由于研究的时间不长简单的总结了下防御办法。
如下表单
<form name="testform" method="post" action="news/comment.php">
<input type="text" name="userName">
<input type="hidden" name="test1" />
<input type="hidden" name="test2" />
</form>
如果在用户在输入用户时录入的数据为" /><script src=xxx></script>这样就会插入了恶意的脚本
解决办法:
1、对用户录入的数据进行类型和长度的验证,其它的包括对URL、查询关键字、HTTP头、get、post也需要进行可靠的输入验证,这样可以抵挡部分恶意的脚本,但是不能完全防住。
2、尽量采用POST方式而非GET方式提交表单;对”<”,”>”,”;”,”’”等字符做过滤;任何内容输出到页面之前都必须加以encode。对于Cookie 尽量避免直接泄露用户隐私,可以用cookie结合其它一些系统或用户信息来降低泄露后的危险。
3、这里要注意一下如果注入代码如<img src="javascript:alert('XSS')">这种需要把关键字去除如 src href 这些连接性的 发现没有带协议头的就需要帮助补充。而style 则需要重点处理 /**/ expression url,尽可能禁止style属性,将所有的样式都定义到CSS中。
4、尽量减少在客户端进行写document等敏感操作,重点关注以下方法
document.URL
document.URLUnencoded
document.location ()
document.referrer
window.location ()
document.create...()等
逐层进行过滤客户端、服务器端、数据库访问层,每一层都进行下数据的过滤尽量将危险控制在最低。
以上是对XSS攻击的一个简单总结,希望大家能够再多多补充。附一张扫描结果!
- 大小: 38.7 KB
分享到:
相关推荐
防止XSS攻击简单实用的解决办法,直接复制两个过滤器,然后配置web.xml即可实现
一、什么是XSS攻击 XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制——例如...
NULL 博文链接:https://unionhu.iteye.com/blog/1952581
简单让你了解xss攻击。 项目基于Asp.net 框架,VS2010下创建,C#语言
XSS攻击常识及常见的XSS攻击脚本汇总
对用户输入的所有数据进行拦截,检测是否含有XSS攻击关键字,如果存在XSS攻击关键字,对一些特殊字符,如:“<”、“>”、“&”等进行转义。 实现方案 自定义一个Filter拦截器,使用 Filter来过滤浏览器发出的...
亲测可用,中级漏洞,解决服务器段请求伪造 final String forURL = ESAPI.encoder().encodeForURL(url); restTemplate.exchange(forURL, HttpMethod.GET,new HttpEntity<String>(headers), List.class, params);
SpringBoot +esapi springSecurity 过滤器链集成 实现防止xss攻击 实战代码
首先说一下思路,防止这种类似于注入攻击,就是使用拦截器(Filter)处理特殊字符或过滤特殊字符 今天介绍一个方法,利用覆盖Servlet的getParameter方法达到处理特殊字符的目的来解决(防止)Xss攻击 web.xml,需要的...
所有需要的文件均在里面,超有所值
SpringBoot +esapi 实现防止xss攻击 实战代码,真实有效
预防xss攻击,过滤标签.js
网站xss 攻击 代码示例,包括alert弹框,钓鱼网站截取用户cookie信息等;是学习xss的简单示例。可以下载玩玩看看,示例中的钓鱼网站地址为 演示地址,即本资源中的项目地址。xss也是很简单的,可以学习学习
Java防止xss攻击依赖jar包
web安全之XSS攻击及防御,
百度内部通用XSS攻击解决方案探讨培训ppt
xss攻击(post)流量数据包
web安全之XSS攻击demo,配合我个人博客使用,谢谢各位的捧场
1.处理springboot项目的xss攻击的技术调研文档 2.处理富文本的存储类型的XSS攻击 3.处理URL参数层面的反射类型的XSS攻击