xss-labs靶场第九关测试报告
目录
一、测试环境
1、系统环境
2、使用工具/软件
二、测试目的
三、操作过程
1、注入点寻找
2、使用hackbar进行payload测试
3、绕过结果
四、源代码分析
五、结论
一、测试环境
1、系统环境
渗透机:本机(127.0.0.1)
靶 机:本机(127.0.0.1)
2、使用工具/软件
火狐浏览器的hackbar插件,版本:2.3.1
测试网址:http://127.0.0.1/xss-labs-master/leve9.php
二、测试目的
实现基于get型的xss攻击,构造payload绕过检测。
三、操作过程
1、注入点寻找
尝试输入框注入
<script>alert(1)</script>,发现href直接提示链接不合法
2、使用hackbar进行payload测试
尝试js事件javascript:alert(1),发现value的js事件没过滤
尝试onfus事件,闭合value ">onfus=javascript:alert(1)
发现直接没有参数了 “>也被解析为实体字符,不能注入
A标签一直提示链接不合法,尝试添加http头部http://javascript:alert(1)
发现可以解析了,将http头放在后边也是可以
注入a标签用上关的payload,在后边加上注释的http头部
javascript:alert(1)//http://
同样是在输入框中注入,检测到http头部,a标签的链接就可跳转,payload执行
3、绕过结果
使用编码绕过+注释的http://
javascript:alert(1)//http://
四、源代码分析
这关依然是进行了转化大小写,script、on、src、data、href、”的替换
注入点在a标签,不过这关加了一个if语句,判断有http://才返回字符串,否则都是链接不合法
五、结论
根据页面回显来判断如何注入,这关不管怎么输入,a标签链接都是不合法,只有检测到http://才能解析,因此需要在后面加上注释掉的http://,成功用编码绕过的payload执行