正文
我受邀参加某公司的一个私密漏洞赏金项目。在测试时,我发现该平台采用 PIN 码登录系统,而不是传统密码。每次登录尝试时,系统会发送一个 6 位数的 PIN 码。
系统设置了频率限制,防止暴力破解 PIN 码。
同时我发现,每次更改账号邮箱后,系统会自动将我登出。为了重新登录,我需要使用新邮箱地址接收到的 PIN 码。
进一步测试时,我发现该平台还有一个子域,使用相同的账号密码也可以登录。我尝试在主域和这个子域上同时保持登录状态。然而,每当我在任一会话中更改邮箱后,系统会强制登出两个域的会话。
在探索平台时,我发现该平台还提供一种企业服务,能够提供额外功能。接着,我创建了一个新的企业账号,并将我的个人账号邀请为这个企业账号的管理员。
现在,我的个人账号拥有了切换“个人模式”和“企业模式”的权限。
接着,请看我是如何实现账户接管的。
1、在主域中登录我的个人账号。
2、在另一个标签页中,在子域再次登录相同账号,并切换到企业模式。
3、回到主域中,我将账号的邮箱更改为另一个已存在的邮箱地址,并在邮箱后添加一个 URL 编码的空格(%20),绕过"邮箱已存在"的校验。
4、主域将我登出,因为邮箱发生了更改。但在子域上,由于处于“企业模式”,我的会话仍然有效。
5、然后,我在子域中将模式切换回“个人模式”,直接进入了目标用户的账号。
原文出处:
https://hamzadzworm.medium.com/critical-account-takeover-via-interesting-logic-issue-6e5f4ee86c5b
原文始发于微信公众号(玲珑安全):通过有趣的逻辑漏洞实现账户接管
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论