User ID controlled by request parameter with password disclosure-Burp 复现

User ID controlled by request parameter with password disclosure-Burp 复现

实验信息

  • 平台:PortSwigger Web Security Academy

  • 漏洞:Access Control

  • Lab: User ID controlled by request parameter with password disclosure

  • 难度:Apprentice

漏洞原理

该场景属于Broken Access Control (访问控制失效) ,原理是 Horizontal to vertical privilege escalation(越权访问)漏洞。核心原因是服务器端未对请求参数中的用户标识(User ID)进行严格的权限校验,仅通过前端传入的id参数判断用户身份,未验证当前登录用户是否有权限访问该id对应的资源。同时,系统将敏感信息(如管理员密码)直接嵌入前端页面代码中,未做任何加密或隐藏处理,导致普通用户可通过修改id参数,越权访问管理员账户信息,并获取明文密码,进而实现从普通用户到管理员的权限提升,最终破坏系统的机密性(Confidentiality)和完整性(Integrity)

Lab 6:

  1. 在登录成功后直接进行越权将id改为administrator,可以看到status code is 200 ok

  2. 在Response的frontend窗口可以看见敏感信息,包括admin panel的URL以及administrator password

  1. 既然retrieve the URL /admin,试着能否直接进入控制面板破坏Integrity,发现这里是做了防护措施
  1. 不过可以通过administrator password进行登录,这时可以Get /admin 进入控制面板将用户Carlos删掉

5.lab solved!

利用Payload

复制代码
 Get /myaccount?id=administrator

将个人id改成管理员身份

复制代码
 Get /admin

访问admin panel

这些都在之前的lab中得到充分的练习

个人总结

  • 第一, 如何利用这个漏洞?

普通用户身份可以直接修改URL并通过前端页面获取管理员身份信息,越权访问并修改内部文件

  • 第二,为什么会产生这个漏洞?

没有进行用户身份校验;把个人密码敏感信息直接prefilled in input box, 前端页面可以直接查看

  • 第三,如何修复这个漏洞?

登录的用户身份校验authentication是必不可少的;密码不能明文暴露在前端。

至此,Access control类型的基础lab solved,可以发现很多的漏洞都是直接把个人信息放到前端,那么这不能保证Confidential,这些lab完成的条件都是将Carlos删除,Integrity也不能保障,administrator作为最高权限用户,在这些lab中身份验证的缺失就是导vulnerability的关键。

相关推荐
清水白石0085 分钟前
ThreadPoolExecutor 线程越多越快?从 30ms HTTP 调用讲透并发数、连接池与背压
网络·网络协议·http
IT小白杨6 分钟前
eBay多账号如何应对关联判定:主体、收款、IP、环境四层配置清单一次讲清
java·网络·网络协议·tcp/ip·自动化·指纹浏览器
あ-1 小时前
企业 DevOps + 协同办公 + 可观测性 + 网络基础设施平台
运维·网络·devops
数据知道1 小时前
哈希与密码存储——bcrypt、Argon2、盐值与彩虹表
网络·算法·安全·网络安全·密码学·哈希算法
sbjdhjd1 小时前
从 assert 动态调用报错到临时文件链路:PHP 5.6 与 7.3 授权靶场中的短 payload 复盘 | (17字符绕过)
安全·网络安全·数据挖掘·开源·云计算·php·字符绕过
sbjdhjd1 小时前
从 7 字符文件名拼接到二维数组取值:PHP 无参函数限制下的受控靶场复盘 | (7字符绕过)
网络·nginx·安全·网络安全·云计算·php·apache
新时代牛马1 小时前
Linux 网络配置:iproute2、DNS 与连通性排障
linux·服务器·网络
新时代牛马1 小时前
Linux systemd 服务管理:从unit 文件到systemctl 启停与排障
linux·服务器·网络
隐擎fox2 小时前
网络传输安全剖析:WebRTC 本地真实 IP 泄漏机制(STUN/TURN)与 Python 防护检测实战
网络·网络协议·tcp/ip·安全·webrtc
回忆2012初秋2 小时前
DBX:一个现代化的轻量级、跨平台的开源数据库管理工具
大数据·服务器·网络