用户名:bee,密码:bug,点击start登录后即可进行相应测试。
HTML Injection - Reflected (GET)
那我们直接开始第一题吧
这里有两个框让我们输入,先看看源码
这里把我们输入的fistname和lastname直接带进htmli了
Htmli是按照我们等级来给函数的,我们看看no_check函数
没有过滤就直接输入了,所以我们直接输入xss代码即可
<script>alert(/xss/)</script>
当然我们还可以这样,在bwapp目录下放置一个图片
<img src="bugs.txt">
我们再把难度设置成medium也就是中等难度
这里用了把尖括号换成实体了,但是用了urldecode函数,我们可以把代码先编码成url形式再输入进去
%3cscript%3ealert(%2fxss%2f)%3c%2fscript%3e
再把难度设置成高
看看源码,这里把我们的符号都设置成实体了,所以这是安全的
HTML Injection - Reflected (POST)
这关和上一关是一样的就是换成了POST运输过来了,这里就不一一说明了
HTML Injection - Reflected (URL)
我们可以发现通关url可以传输,所以我们在url中构造语句
抓包把url中添加上?a=<script>alert(/xss/)</script>
中等和高等无法绕过
HTML Injection - Stored (Blog)
直接插入我们的语句即可
<script>alert(/xss/)<script>
中等高等无法绕过
OS Command Injection
设置成中等
这里只是把&和;替换掉了,我们一样可以通过
高等无法绕过
OS Command Injection - Blind
这里是根据反应时间判断命令是否成功执行
PHP Code Injection
中等和高等用了htmlspecialchars函数故无法绕过
Server-Side Includes (SSI) Injection
<script>alert("XSS")</script>
中等过滤的是单引号双引号反斜杠和null所以我们把双引号改成斜杠即可
<script>alert(/XSS/)</script>
而高等就不行了
SQL Injection (Search/GET)
直接搜索’or 1=1#,爆出所有数据
构造语句爆出数据
' union select 1,2,3,4,5,6,7 #