XSS攻击

2018-10-24  本文已影响0人  唐卡豆子

XSS攻击定义

XSS Cross Site Scripting 跨站脚本攻击

XSS攻击原理

它允许恶意web用户将代码植入到提供给其它用户使用的页面中
1.攻击者对某含有漏洞的服务器发起XSS攻击(注入JS代码)
2.诱使受害者打开受到攻击的服务器URL(邮件、留言等,此步骤可选项)
3.受害者在Web浏览器中打开URL,恶意脚本执行。

XSS攻击攻击方式

1.反射型
发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码。这个过程像一次反射,故叫做反射型攻击。

直接
xss=<img src="null" onerror="alert(1)"> 同源策略
引诱
xss=<p onclick="alert('点我呀~')">点我</p>
iframe 植入广告
xss=<iframe src="http://www.baidu.com"></iframe>

2.存储型
区别,提交代码会存储在服务器端(数据库,内存,文件系统等),下次请求目标页面时不再提交XSS代码

XSS攻击防御措施

1.编码 用户输入的数据,HTML Entity编码
例如把<变成<,把>变成>,浏览器收到以后,就会认为是数据,把<script>作为字符串给显示出来,而不是执行后面的代码!

2.过滤
移除用户上传的DOM属性,如onerror, onclick, onmouseover 等事件属性
移除用户上传的Style节点,Script节点,Iframe节点
body.style.display = none

3.校正
避免直接对HTML Entity编码
使用DOM Parse转换,校正不配对的DOM标签

CSRF Cross Site Request Forgery 跨站请求伪造

上一篇 下一篇

猜你喜欢

热点阅读