一、反射型XSS
口诀:见框就插,改url参数
1.实战靶场: testfire.net
(1)搜索框输入 <script>alert("hello,zhangsan")</script>
(2)搜索框输入 <a href="https://www.baidu.com/">震惊!88岁中国老太太让全世界膜拜</a>
点击文字可实现跳转到百度页面
(3)地址栏搜索的url参数中写入攻击参数 <script>alert('XSS Attack');</script>
2.dvwa靶场
(1) 首先,把dvwa安全等级调为low
(2) 找到反射型XSS
1)框中输入 <script>alert(1)</script>
2)输入 <a href="https://www.baidu.com/">百度</a>
点击文字可实现跳转到百度页面
二、存储型XSS
这里在dvwa靶场进行演示
Name:随便输一个
Message:
(1) 输入 <script>alert(1)</script>
(2) 输入 <a href="https://www.baidu.com/">震惊!88岁中国老太太让全世界膜拜</a>
显示在下方,点击文字可实现跳转到百度页面
三、DOM型XSS
同样在dvwa靶场演示
地址栏修改default参数(默认值)
(1)改为CS,实现成功,但CS并不是里面的语言
(2)改为 <script>alert("test")</script>
查看网页源代码,发现option多出一项,即为执行成功
四、dvwa 和 蓝莲花 实现XSS漏洞
1.蓝莲花的下载与配置
下载地址:
WeTab 新标签页 (github.com)https://github.com/firesunCN/BlueLotus_XSSReceiver
选择zip压缩包下载
解压到小皮的WWW目录下
进入小皮,选择网站,根据网上的教程修改根目录为蓝莲花的下载目录,这里我们暂且按照这个设置,后面出问题了,现在我们接着往下操作。
地址栏输入localhost,进入蓝莲花的安装界面:
点击安装:
不做修改,选择提供的默认配置,点击登录:
输入登录密码(配置界面的后台登录密码),若有修改则输入改后自己的密码
进入后点击我的JS,文件名随便输入,说明可不填,选择default.js,点击插入模板
选择格式化,代码便于阅读
不出意外的话又要出意外了,为了测试dvwa能不能用,我把小皮网站的根目录改回了原来的WWW,因为之前根目录设置的是蓝莲花的地址,进不去dvwa的,按照网上教程两者如同鱼与熊掌不可兼得,能够进入dvwa后,我把根目录改回蓝莲花的地址目录,这时候地址栏输入localhost发现进不去了,页面一片空白,我以为是浏览器问题,Edge换成谷歌后还是同样的空白页面,进不去蓝莲花的界面,后面发现是地址栏输的有问题,此时根目录为WWW,可以实现dvwa和蓝莲花同时操作,把地址栏改为localhost/BlueLotus_XSSReceiver-master/login.php,即原来地址后面加个login.php,成功进入。
2.利用蓝莲花与dvwa进行XSS实操
这里我又出问题了,我的蓝莲花的XSS接受面板接受不到来自dvwa的消息,我以为是初始配置没有勾选启动邮件通知的原因,我把蓝莲花文件删了重新安装,在配置界面修改了后台登陆密码和数据加密密码,还勾选了启动邮件通知,一切安装好后发现还是接收不到,后面发现是我的website网址有误:
把地址改为蓝莲花界面的地址,并且最重要的一点:把admin.php改为index.php
点击生成payload,然后复制
进入dvwa,查看网页源代码,修改Message输入框最大长度限制,这里我改成50000
输入之前复制的payload,点击Sign Guestbook发送
这时蓝莲花成功收到来自dvwa的邮件
点击可以查看cookie值
以上就是全部操作了,你以为这就结束了吗?不不不,我们还可以玩点其他好玩的东西——使用接收到的cookie值实现dvwa的免账号密码登录,我们接着往下看:
打开谷歌浏览器,地址栏输入dvwa的地址,检查页面源代码——找到Application,修改PHPSESSID的value值,改为刚刚蓝莲花接收到的cookie中的PHPSESSID值,地址栏重新输入dvwa地址,进入dvwa界面,成功实现免账号密码登录!
---------------------------------------------------------------------------------------------------------------------------------
现在是真正的结束啦,又到了说再见的时候,拜拜我们下期再见。