<aside> ❓ What if I told you that there is a web application vulnerability so simple to exploit, that it could make bug hunting feel like a breeze?
</aside>
https://www.youtube.com/watch?v=EQ7QdlXV6fo
<aside> 💡 Insecure Direct Object References (IDOR) is a type of access control vulnerability that arises when an application uses user-supplied input to access objects directly.
</aside>
Top IDOR parameters to look out for
id=
uid=
gid=
user=
account=
number=
order=
no=
doc=
file=
key=
email=
group=
profile=
edit=
report=
UUIDs are Universally Unique Identifiers, and you will encounter them often when hunting for IDORs. They are designed to be non-guessable, which might seem to shut down avenues for exploitation. Many bug bounty programs do not consider IDORs on UUIDs.
But don’t be deterred; here are a few tricks to test these seemingly secure IDs
0000000-0000-0000-000000000000
. You’d be surprised how often the default values are overlooked in access controls.Consider the following enpoint:
/api/messages?user_id=<USER_ID>
If you can’t find an IDOR on the user_id
parameter, try to add another user_id
.
/api/messages?user_id=<USER_ID>&**user_id=<OTHER_ID>**
Another variation involves lists.