bodgeit靶场
这两天在学长的引导下,我把bodgeit靶场练习了一下。以下是我练习的一些关卡。
在About Us中的Scoring page中可以查看关卡:

1、利用注入漏洞万能密码登录账号
尝试构造万能密码:
1 | test@thebodgeitstore.com' or '1'='1# |

发现登录成功:

可以查看一下源代码,在login.jsp中,

其余两个用户也构造同样的万能密码:
1 | user1@thebodgeitstore.com' or '1'='1# |


2、xss漏洞
(1)反射型XSS
发现search模块有个搜索框,尝试使用xss构造。
1 | <script>alert('xss')</script> |

成功出现弹窗,说明存在xss漏洞。

(2)存储型XSS
既然发现有反射型XSS漏洞,再找找存储型XSS。在Contact Us模块还有一个输入框。先尝试一下:
1 | <script>alert('xss')</script> |
发现屏蔽掉了一些关键字:

可能是对某些关键字进行了过滤,再尝试一下大小写绕过:
1 | <ScRipt>alert('xss')</ScRipt> |
发现成功啦!

此时,查看一下源码,发现的确是对进行特殊处理:

在注册处还存在一个xss,
1 | 注册账号:test@qq.com<script>alert('xss')</script> |

点击register注册后,会:

3、以非管理员用户身份查找隐藏内容
在普通用户页面,查看源代码,发现有个被注释掉的超链接Admin,而它的页面对应为admin.jsp,有可能是后台

直接在网址输入即可访问,的确为后台:

4、访问其他人的购物篮
通过burp,修改b_id值,就可以越权访问其他人的购物篮。 其他人的BasketId在我们之前发现的admin后台处可以直接查看:

这里我们登录test@thebodgeitstore.com这个账号,点击Your Basket界面,并提交到burp

这里我们将b_id值改为10,即查看test@qq.com的购物篮,点击发送:

可以看到,此时,已经出现了test@qq.com的购物篮

5、让商店欠你钱
登录一个普通账号,在Your Basket界面,点击Update Basket,并用burp进行抓取

直接修改quantity的值,将其变成负数:

然后再发送回来,就可以让数量变成负数,此时的价格当然也变成了负,现在商店要给你付钱啦哈哈哈。

6、CSRF漏洞
修改密码处有个CSRF漏洞。 登录账号test@thebodgeitstore.com,在修改密码界面,修改密码:

提交并使用burp抓包,然后选择在burp中右键选择相关工具的CSRF PoC生成:

把POST改为GET:

然后选择用浏览器测试,复制地址:

将复制的地址,先放到浏览器,然后登录另一个账号user1@thebodgeitstore.com,此时点击刚刚生成的地址,会发现user1的密码被修改了。
