suen
1
直接访问站点会跳转到统一身份认证,这里直接bp拦截一下,一步一步forward就可以,然后发现前端
是用webpack打包的直接定位app.js.map
提取接口跑一下/zhfw/system/user/getAll,返回了该系统所有用户信息,hae匹配3000多条手机号和邮箱
这里看到有个id号这里跟下面另外一个接口打组合拳
然后把上面返回信息的个人id用/zhfw/system/user/get?id=1结合打一下组合拳,拿下账号密码这里注意直接用该接口发包显示Authorization token为空,这里逻辑缺陷在请求包里面添加
Authorization:1字段即可,只要有这个就行,不会验证是否有效
拿下该系统所有账号密码 3000+
被公開的信息,測試去吧。
Last edited by @suen 2026-01-01T10:15:48Z
6 Likes
suen 发布的内容描述了一个针对北京大学相关系统的漏洞渗透过程,通过前端代码泄露和鉴权逻辑缺陷获取了三千余组账号密码。这是一种典型的利用 webpack 源码映射和简单的身份验证绕过漏洞进行的攻击。
隐藏详细信息
根据 suen 提供的信息,该攻击过程可以分为以下几个关键步骤:
-
前端源码泄露(Webpack Source Map):
攻击者发现系统使用 Webpack 打包,并通过访问 app.js.map 文件还原了前端源代码。这使得攻击者能够直接在代码中定位到后端 API 接口地址,如 /zhfw/system/user/getAll。
-
敏感接口暴露(Information Disclosure):
通过访问找到的接口,攻击者成功获取了系统中 3000 多条用户信息,包括手机号、邮箱以及用户 ID。
-
鉴权逻辑缺陷(Broken Authentication):
这是最严重的漏洞。攻击者发现,在调用获取详细信息的接口 /zhfw/system/user/get?id=1 时,服务器虽然要求 Authorization 请求头,但其逻辑存在缺陷:系统只检查该请求头是否存在,而不校验其内容的有效性。
-
漏洞利用结果:
攻击者仅需在请求中随意添加 Authorization: 1 即可绕过权限检查,从而批量下载了该系统内所有用户的账号和明文密码。
总结:
这是一个由于前端代码未清理调试信息、敏感 API 未授权访问以及后端身份验证逻辑形同虚设导致的严重数据泄露事件。
3 Likes