Skip to content

Grab · disclosed report #202425

Two-factor authentication bypass on Grab Android App

How it was found, in CyberSIXT's words · 46 votes

This analysis is CyberSIXT's own summary of the public report, written by a model and checked automatically. It may be wrong: the researcher's report is the source.

Read the researcher's report

Read the researcher's report on HackerOne

A profile-edit flow accepted a four-digit SMS verification code without limiting failed guesses or expiring the code. A researcher used the app’s session and automated guesses to recover the valid code, potentially enabling changes to a victim’s account profile and contact details.

How it was found

  1. Proxied the Android app’s traffic and identified the profile-edit verification endpoint.
  2. Observed that an incorrect code returned an error while a correct code produced a successful response.
  3. Automated attempts across the four-digit code space using an app session.
  4. Confirmed the discovered code matched the SMS code and enabled the profile change.
Access needed
A user account · an account
User interaction
Needed
Whose object
Another user's
Boundary crossed
The attacker used a victim’s SMS verification flow to authorize changes to that victim’s account profile.
Root cause
The verification endpoint lacked rate limiting and code expiration after failed attempts.
Impact
An attacker with the required app session could brute-force the SMS code and alter victim account details, creating an account-takeover risk.
Fix
The report recommends rate limiting and/or expiring the code after a small number of incorrect attempts; it does not state which fix was implemented.
Payload class
Automated brute-force of a four-digit SMS verification code
Components
Android app, profile-edit endpoint, SMS verification flow
Confidence
high

This analysis is CyberSIXT's own summary of the public report, written by a model and checked automatically. It may be wrong: the researcher's report is the source. Written 2026-11-15. Ask for a correction or removal.

Similar findings, side by side
ReportAccessWhose objectBoundary crossed
Bypass two-factor authenticationA user accountAnother user'sThe password-reset flow potentially allowed an attacker to bypass the victim’s two-factor check and take over the account.
Rate-limit bypassA user accountAnother user'sRepeated second-factor guesses crossed the authentication boundary into the targeted account.
Ability to DOS any organization's SSO and open up the door to account takeoversA user accountAnother tenant'sSSO authentication for one organization resulted in user provisioning into an attacker-controlled organization.
Web Authentication Endpoint Credentials Brute-Force VulnerabilityNo accountAnother user'sAn unauthenticated attacker crossed the login boundary by guessing a test account's password and authenticating.
Absence of Token expiry leads to Unauthorized login AccessNo accountAnother user'sAn unauthenticated login challenge was used to authenticate as another user's account.
Account Takeover via SMS Authentication FlowNo accountAnother user'sA victim's SMS verification authenticated a token already obtained by the attacker.
Authorization bypass using login by phone option+horizontal escalation possible on Grab Android AppNo accountAnother user'sUnauthenticated access to another user's account by repeatedly guessing phone-login OTPs.
Bypass Password Authentication to Update the PasswordA user accountAnother user'sA hijacked authenticated session could change another user's password by guessing its current value.
No Rate Limiting On Phone Number Login Leads to Login BypassNo accountAnother user'sUnauthenticated access to a victim’s account by guessing the phone-login OTP.
bypass two-factor authentication.No accountAnother user'sThe account-merging flow granted access to another user's account without two-factor verification.
Signup with any Email and Enable 2-FA without verifying EmailNo accountAnother user'sAn unverified account could configure two-factor authentication using another person's email address.
Bypass Password Authentication to Update the PasswordA user accountAnother user'sA hijacked logged-in session could change another user's account password after guessing its current password.
Program
Grab
Status
Valid
Severity
Medium
Bounty
None stated
Weakness as filed
Improper Authentication - Generic
Disclosed
2017
Upvotes
46

Every one of the 12 is a mark on the map. Named now: 1 to 12, most similar first.

  1. Bypass two-factor authentication#121696Slack · needs: a user account · 3 shared techniques
  2. Rate-limit bypass#165727Slack · needs: a user account · 3 shared techniques
  3. Ability to DOS any organization's SSO and open up the door to account takeovers#976603Superhuman (formerly Grammarly) · needs: a user account · 2 shared techniques
  4. Web Authentication Endpoint Credentials Brute-Force Vulnerability#127844HackerOne · needs: no account · 2 shared techniques
  5. Absence of Token expiry leads to Unauthorized login Access#766578Affirm · needs: no account · 2 shared techniques
  6. Account Takeover via SMS Authentication Flow#1245762Zenly · needs: no account · 2 shared techniques
  7. Authorization bypass using login by phone option+horizontal escalation possible on Grab Android App#205000Grab · needs: no account · 2 shared techniques
  8. Bypass Password Authentication to Update the Password#970157X / xAI · needs: a user account · 2 shared techniques
  9. No Rate Limiting On Phone Number Login Leads to Login Bypass#903363Smule · needs: no account · 2 shared techniques
  10. bypass two-factor authentication.#1842183LinkedIn · needs: no account · 2 shared techniques
  11. Signup with any Email and Enable 2-FA without verifying Email#1543259Cloudflare Public Bug Bounty · needs: no account · 2 shared techniques
  12. Bypass Password Authentication to Update the Password#982293X / xAI · needs: a user account · 2 shared techniques

paid a bounty

Zoom in on the map and the dots under the middle of it are named where they are.

Data as of 2026-11-15. CVE List through 2026-11-15 · EPSS of 2026-11-15 · CISA KEV checked 2026-11-15. Sources: the CVE List, CISA KEV, EPSS, NVD, nuclei templates and public bug bounty data.