资产证明
首先通过企查查搜索目标单位,进入股权穿透图进行分析。

分析后发现,该单位的最终归属为某省教育厅级单位。

随后,使用 www.aizhan.com 查询网站权重,确认其符合预期目标标准。

挖掘过程
目标网站首页,点击“学生登录”,然后注册一个账号并登录。
很多时候,安全测试人员在挖掘网站漏洞时,会因为手头没有账号而放弃。其实,没有账号完全可以自行注册一个。

注册成功后,进入个人中心。

登录后,浏览职位信息,选择一家公司查看其详情。这里的关键点是,必须先注册学生账号并登录,才能看到企业联系人的完整手机号码,未登录状态下信息是隐藏的。
该网站的权限体系大致分为三个级别:
- 未登录(权限1):信息查看受限。
- 学生账号登录(权限2):可查看招聘职位及企业联系方式等更多信息。
- 企业账号登录(权限3):拥有最高权限,可查看、下载学生完整简历等。
我们的思路是:通过注册获得权限2,借此获取企业负责人的联系电话;然后尝试利用漏洞越权登录企业账号,实现从权限2到权限3的跃升。

选择一家企业后,发现其负责人手机号。此信息仅权限2可见,权限1不可见。

手机号:13266********
接下来,切换至“单位登录”界面,使用刚才获取到的手机号进行登录。在输入验证码环节,通过抓包拦截请求,修改为自己的验证码,从而绕过短信验证,成功登录企业账号。这是本次漏洞挖掘中的第一个关键点——验证码绕过。


成功绕过短信验证,使用自定义验证码登录。

成功越权登录企业账号后台。

在企业后台中找到简历管理相关功能。

随机点击一份简历,发现页面上的敏感信息(如手机号、身份证号)被隐藏。然而,当我们点击“下载”简历后,下载到的文件中包含了所有完整的敏感信息。这导致了全站学生信息的泄露。请注意,查看和下载简历的功能仅对企业账户(权限3)开放。
点击下载简历后,个人信息完全暴露。

多测试几份简历,情况相同。

获取到学生的手机号后,我们可以再次利用验证码绕过的思路。在“学生登录”处,使用抓包修改手机号为已获取的学生手机号,并填入自己设定的验证码,从而登录任意学生账号。登录后,即可获取该学生的身份证号等全部敏感信息,并能够修改其密码。

成功登录另一个学生账号。

此时,可以查看并修改该学生的所有敏感信息,包括身份证号。

总结
此次漏洞挖掘,最终实现了对某省教育厅下属就业服务全站账号的接管。根据统计,该网站至少有数百个企业账号可通过此方法越权登录。而每个企业账号平均管理着近百份待就业学生的详细简历,这意味着通过企业账号泄露的学生手机号,可以进一步爆破并接管全站的学生账号。
验证码绕过本身并非新颖的攻击手法,但在实际渗透测试中,若能巧妙结合业务逻辑(如权限差异、信息泄露点),常常能起到串联漏洞、扩大影响面的关键作用。
下面简要总结几种常见的验证码绕过思路:
- 直接替换手机号绕过:在发送或验证验证码的请求中,将手机号参数修改为目标手机号。
- 参数污染(双写手机号)绕过:尝试提交多个手机号参数,系统可能错误地校验了攻击者控制的参数。
- 添加相同数据结构绕过:在JSON或XML请求体中,添加一个由攻击者控制的、与原手机号字段结构相同的字段,系统可能优先校验该字段。
附:常见短信验证码安全风险思维导图。

(更多关于渗透测试、漏洞挖掘的技术讨论与资源分享,欢迎访问 云栈社区 的安全技术板块。)
|