Skip to content

Insecure Direct Object References (IDOR)

IDOR Mit hilfe von IDOR ist es möglich auf ungeschützte Daten oder sonstige Informationen zuzugreifen.
Dies ist möglich, wenn keine oder eine schlechte Zugriffskontrolle implementiert ist. Auf diese Daten wird mithilfe eines bestimmten Wertes verwiesen, welcher herausgefunden werden kann, falls es sich nicht um einen sicheren Zufallswert handelt.

Schwache Pseudo Nummer Generatoren

UUID/GUID v1 kann vorhergesagt werden, falls der Zeitpunkt der Erstellung bekannt ist. 95f6e264-bb00-11ec-8833-00155d01ef00 MongoDB Object Ids werden auf eine vorhersagbare Weise generiert: 5ae9b90a2c144b9def01ec37

  • 4-byte Wert welcher die Sekunden seit der Unix Epoche
  • 3-byte Maschinen Identifizierer
  • 2-byte Prozessor ID
  • 3-byte zähler, welcher mit einer Zufallszahl startet

Gehashte Referenzen

Manchmal nutzen auch Programme gehashte Referenzen.
Handelt es sich hierbei um schwache Hashes oder ist bekannt was gehasht wird kann dies ausgenutzt werden. - MD5 098f6bcd4621d373cade4e832627b4f6 - SHA1 a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - SHA2 9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08

Wildcard Referenzen

Es ist auch möglich, dass Applikationen auf Wildcards reagieren: - * - % - . - _

Weitere Möglichkeiten

  • Ändern des HTTP requests: POST -> PUT
  • Ändern des Content typs: XML -> JSON
  • Nummerische Werte zu arrays: {"id":19} -> {"id":[19]}
  • Parameter Pollution: user_id=hacker_id&user_id=victim_id