学徒-从水平到垂直-密码泄露
# 实验室:由请求参数控制的用户ID,密码泄露
# 题目
此实验室在用户的帐户页面上 包含当前用户的现有密码,密码被预填充在了隐藏的输入框中。
若要解决实验室问题,请检索管理员的密码,然后使用其账号删除carlos
用户。
你可以使用以下凭据登录到自己的帐户:wiener
:peter
- name: 实验室-学徒
desc: 由请求参数控制的用户ID,密码泄露 >>
avatar: https://fastly.statically.io/gh/clincat/blog-imgs@main/vuepress/static/imgs/docs/burpsuite-learn/public/lab-logo.png
link: https://portswigger.net/web-security/access-control/lab-user-id-controlled-by-request-parameter-with-password-disclosure
bgColor: '#001350'
textColor: '#39d50c'
1
2
3
4
5
6
2
3
4
5
6
# 实操
根据题意,可得实验目标:
- 在账户页面寻找管理员用户的密码,然后使用其账号删除 carlos 用户。
点击 “ACCESS THE LAB” 进入实验室。

点击 “My account” 进入登录界面。

输入题目中提供的用户名和密码wiener
:peter
进行登录。

登录成功。
如题目中所说,账户信息会显示当前用户的密码。

尝试修改id
参数,从原来的 wiener 修改为administrator 。
成功查看 administrator 用户的账户信息。

但,网页上显示的密码是隐藏的,需要通过一些手段进行查看。
在浏览器中按下 “F12” 启用开发者工具,然后找到对应的输入框,在源代码中可以看到明文密码kozuxv1iplrqt6q7675k
。

现在只是看到了 administrator 用户的信息,但是并不具备管理员权限,所以需要重新登录。
点击 “Log out” 退出当前的 wiener 账户。

回到登录界面,输入用户名 administrator 以及刚刚获得的密码kozuxv1iplrqt6q7675k
进行登录。

登录成功,点击 “Admin panel” 进入管理面板。

点击 Delete 删除 carlos 用户。

删除成功,实验完成。

编辑 (opens new window)