Blog

Coders Conquer Security: Share & Learn-Reihe: Insecure Direct Object Reference

March 14, 2019
Jaap Karan Singh

URLs sind für die Navigation auf allen Websites und Webanwendungen, die wir kennen und nutzen, unverzichtbar. Ihre grundlegende Funktion besteht darin, Ressourcen zu identifizieren und deren Abruf zu ermöglichen. Obwohl URLs für das World Wide Web essenziell sind, können sie bei mangelnder Absicherung ein Sicherheitsrisiko darstellen.

In diesem Beitrag erfahren Sie:

  • Was IDOR ist und wie Angreifer es nutzen
  • Warum IDOR gefährlich ist
  • Techniken zur Behebung dieser Schwachstelle

IDOR verstehen

Eine direkte Objekt-Referenz liegt vor, wenn ein bestimmter Datensatz (das „Objekt“) innerhalb einer Anwendung referenziert wird. Dies geschieht meist über eine eindeutige Kennung, die häufig in der URL erscheint.

Sie haben vielleicht schon einmal ein „?id=12345“ am Ende einer URL bemerkt. Die Zahl 12345 ist dabei die Referenz auf einen spezifischen Datensatz. Sicherheitslücken entstehen, wenn für einzelne Datensätze keine Zugriffskontrolle implementiert ist. Dies ermöglicht es Benutzern, auf Daten zuzugreifen, die sie eigentlich nicht sehen dürften. Ein solcher Angriff erfordert nur geringe technische Kenntnisse.

Angenommen, ein Angreifer ändert in diesem Fall die ID in der URL auf 12344. In einer Anwendung, die anfällig für IDOR ist, könnte der Angreifer nun die Daten einsehen, die zu diesem Datensatz gehören.

Wie groß ist der Schaden, den eine solche Schwachstelle tatsächlich anrichten kann?

Warum IDOR gefährlich ist

Wenn Entwickler nicht sorgfältig arbeiten, können sie ein System entwerfen, das Anwendungsdaten an verschiedenen Stellen preisgibt. Ein solcher Datenleck-Vorfall kann schwerwiegende Folgen haben, insbesondere wenn sensible Informationen oder personenbezogene Daten (PII) betroffen sind.

Das australische Finanzamt richtete eine Website ein, um Unternehmen bei der Erhebung einer neuen Steuer zu unterstützen. Leider enthielt sie eine ungewollte IDOR-Schwachstelle. Ein neugieriger Nutzer stellte fest, dass die URLs der Website seine australische Unternehmensnummer (ABN) enthielten. Da diese Nummer für jedes registrierte Unternehmen leicht herauszufinden ist, probierte der Nutzer einfach die Nummern anderer Firmen in der URL aus. Er erhielt daraufhin Zugriff auf deren Bankverbindungen und persönliche Daten!

Auch Apple wurde kürzlich Opfer einer IDOR-Schwachstelle. Bei der Einführung des iPads wurden 114.000 E-Mail-Adressen von Kunden geleakt. (Fairerweise muss man sagen, dass dies eher ein Fehler von AT&T war).

AT&T hatte einen Dienst zur Unterstützung der 3G-Konnektivität für iPads entwickelt. Das iPad übermittelte eine auf der SIM-Karte gespeicherte Kennung an den Dienst von AT&T, welcher daraufhin die E-Mail-Adresse des Nutzers zurückgab.

Leider handelte es sich bei diesen Kennungen um einfache fortlaufende Zahlen, die leicht zu erraten waren. Angreifer konnten die Kennungen durchlaufen und so die E-Mail-Adressen stehlen.

Ein weiterer Fehler bestand darin, dass der Dienst von AT&T versuchte, sich abzusichern, indem er die E-Mail-Adresse nur dann zurückgab, wenn der User-Agent-Header der Anfrage signalisierte, dass sie von einem iPad stammte. Der User-Agent ist jedoch nur ein String-Wert, der leicht manipuliert werden kann.

IDOR-Schwachstellen können subtil und tückisch sein. Lassen Sie uns besprechen, wie man sie effektiv verhindert.

IDOR besiegen

Zugriffskontrolle ist der Schlüssel zur Lösung von IDOR. Stellen Sie bei jeder Anfrage eines Benutzers nach einem bestimmten Datensatz sicher, dass dieser auch dazu berechtigt ist.

Am besten gelingt dies durch den Einsatz zentraler Autorisierungsmodule. Tools wie Spring Security bieten robuste und anpassbare Authentifizierungs- und Autorisierungsfunktionen für Anwendungen.

Kurz gesagt: Nutzen Sie ein zentrales Modul, auf das sich der gesamte restliche Code für Autorisierungsprüfungen stützt.

Eine weitere gängige Schutzmaßnahme ist die Verwendung von Ersatzreferenzen. Anstatt die tatsächlichen Datenbank-IDs in Ihren URLs zu verwenden, können Sie Zufallszahlen generieren, die auf die entsprechenden Datensätze verweisen.

Durch die Verwendung von Ersatzreferenzen verhindern Sie, dass ein Angreifer durch einfaches Raten der nächsten gültigen ID auf einen Datensatz zugreifen kann.

Verlassen Sie sich schließlich niemals auf Daten, die vom Benutzer manipuliert werden können, um Autorisierungen vorzunehmen. AT&T versuchte, den User-Agent-Header zur Autorisierung zu nutzen. Vertrauen Sie nicht auf HTTP-Header, Cookies oder GET- und POST-Parameter.

Mit diesen Schutzmaßnahmen gehört IDOR der Vergangenheit an.

Sichern Sie Ihre Referenzen

Unsichere direkte Objektverweise gehören zu den am einfachsten auszunutzenden Schwachstellen. Lassen Sie sich nicht unvorbereitet erwischen. Prüfen Sie immer die Benutzerberechtigungen, verwenden Sie keine echten Datenbank-IDs und verlassen Sie sich bei der Autorisierung nicht auf benutzergesteuerte Daten.

Vertiefen Sie Ihr Wissen mit unseren Lernressourcen. Wenn Sie üben, wie man IDOR-Schwachstellen in der Sprache Ihrer Wahl entschärft, werden Sie diese Probleme in Ihren Produktions-Codebases problemlos finden und beheben können. Testen Sie Ihr neues Verteidigungswissen mit einer kostenlosen Demo der Secure Code Warrior-Plattform, die Cybersicherheitsteams zu echten Cyber-Experten ausbildet. Mehr über die Abwehr dieser und vieler anderer Bedrohungen erfahren Sie im Secure Code Warrior-Blog.

Bereit, sich gegen IDOR-Angriffe zu wehren? Besuchen Sie unsere Plattform und fordern Sie sich kostenlos heraus: [Hier starten]

Slogan

Kontrollieren Sie KI-gestützte Entwicklung, bevor sie in Produktion geht

Bewerten Sie KI-gestützte Risiken, setzen Sie Richtlinien für sicheren Code direkt beim Commit durch und beschleunigen Sie die sichere Bereitstellung über Ihren gesamten SDLC hinweg.

Demo buchen
Ressourcenbibliothek

Weitere Blogs entdecken

Erhalten Sie Zugang zu Experteninhalten über sichere Programmierung, KI-Governance und Software-Risikomanagement.

alle anzeigen
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Eine Sicherheitskultur: Wie Sage sein Champions-Programm aufgebaut hat

Erfahren Sie, wie Sage die Sicherheit durch einen flexiblen, beziehungsorientierten Ansatz gestärkt, über 200 Security Champions ausgebildet und eine messbare Risikoreduzierung erzielt hat.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Cybersecurity Awareness Month 2026: Das Verständnis von KI-Sicherheit ist entscheidend für die Unternehmensverteidigung

Wir haben einen Punkt erreicht, an dem die meisten führenden KI-Unternehmen öffentlich eine weltweite Verlangsamung der KI-Entwicklung gefordert haben, damit die Sicherheitsvorkehrungen Schritt halten können. Doch die Wahrheit ist: Ernsthafte Sicherheitsprobleme sind bereits Realität geworden. Dies bringt unzählige Sicherheitsverantwortliche und Führungsteams in eine dringliche Lage, da die finanziellen Kosten und Risiken durch die Implementierung von KI stetig steigen.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Enabler 8: Branding für Ihr Programm

Ein Programm für sicheres Programmieren braucht mehr als nur großartige Inhalte, um erfolgreich zu sein. Enabler 8 zeigt, wie Branding die Teilnahme zu einem begehrten, statusorientierten Erlebnis macht.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Jeder Mitarbeiter steht jetzt an vorderster Front der KI-Cybersicherheit

Die Unternehmenslandschaft wandelt sich mit einer Geschwindigkeit, die kaum jemand vorhergesehen hat, bis es zu spät war. Wir haben offiziell die Schwelle von handgeschriebenem Code und einfacher Copilot-Unterstützung hin zur Ära des Agentic Development Lifecycle (ADLC) überschritten. Während autonome KI-Agenten eine beispiellose Effizienz in vielen Bereichen versprechen, bringen sie auch eine völlig neue Klasse von Sicherheits- und Regulierungsrisiken mit sich.

Mehr erfahren

Sichere KI-gestützte Entwicklung vor dem Release

Erkennen Sie Entwicklerrisiken, setzen Sie Richtlinien durch und verhindern Sie Schwachstellen über den gesamten Softwareentwicklungszyklus hinweg.

Demo buchen
Keine Elemente gefunden.