漏洞描述
该漏洞是关于2FA的绕过,Slack Web应用程序有速率限制实现。在执行4-6次失败的2FA尝试后,速率限制逻辑将被筛选并要求用户等待下一次尝试(防止自动2FA被暴力破解)
使用iOS App(iOS 9.3.3 iPad Air 2)进行相同的测试,发现API端点/API/auth.signin
没有该措施。
攻击者可以暴力破解2FA并进入用户(受害者的帐户)
漏洞接口: /api/auth.signin
复现步骤
1)使用Slack iOS App,登录一个启用2FA的账户。
2)拦截2FA输入代码请求并执行许多次尝试,但你可以尽可能多地执行。
3)在攻击窗口中,你会看到所有的无效代码尝试都是相同的响应代码 “invalid_pin”的响应消息,但我们的有效代码将作为不同的响应长度的代码响应消息,如
{ "ok":true, "token":"xoxs-62548102116-65394751110-76166043750-0a50252718", "user":"U1XBLN338", "team":"T1UG4303E" }
小结
同样的接口,web端做了限制,移动端口可能没有限制