Erzwungenes Surfen

Erzwungenes Surfen

Eine nicht verlinkte URL ist keine Berechtigungsprüfung.

Was ist Erzwungenes Surfen?

Eine Route existiert, nichts in der Benutzeroberfläche ist mit ihr verknüpft und sie antwortet jedem, der den Pfad errät. Die Geheimhaltung von Ordnernamen ist keine Zugriffskontrolle. Ohne Konto führen Sie eine Content-Discovery-Wortliste für eine Personenplattform durch und finden eine interne Exportroute, die mit 200 OK mit dem vollständigen Mitarbeiterverzeichnis antwortet, ohne dass Cookies oder API-Schlüssel erforderlich sind. Dann fügen Sie das Gate hinzu, das es nie gab, führen eine Sitzungs- und Rollenprüfung durch, bevor eine einzelne Zeile gelesen wird, und geben die Anfrage an einen 403-Fehler weiter.

Was Sie lernen in Erzwungenes Surfen

Erzwungenes Surfen — Trainingsschritte

  1. Das Ziel auskundschaften

    Bob ist ein finanziell motivierter Angreifer. Er findet Unternehmen, die etwas im öffentlichen Internet offengelassen haben, und verkauft die erlangten Daten oder nutzt sie, um an ihr Geld zu gelangen. Heute nimmt er Kelvara ins Visier, eine People-Plattform, über die Unternehmen Lohnbuchhaltung und HR abwickeln. Er beginnt wie jeder auf der öffentlichen Website und erkundet das Unternehmen, bevor er nach einem Einstieg sucht.

  2. Die API-Struktur erfassen

    Auf der öffentlichen Website ist nichts ungewöhnlich: Anmeldung, Produkt-Tour, Support-Seite. Eine Anwendung beantwortet aber weit mehr Pfade, als sie verlinkt. Alles, was ein Entwickler erreichbar gelassen hat, bleibt für jeden erreichbar, der danach sucht. Bob erfasst daher jeden Pfad, auf den die API des Portals tatsächlich antwortet.

  3. Die Exportroute öffnen

    Der eine Pfad, der ohne Prüfung antwortete, ist eine URL wie jede andere. Bob braucht dafür kein Tool: Er gibt den gefundenen Pfad direkt im Browser ein und drückt Eingabe, wie beim Öffnen jeder Seite.

  4. Das gesamte Verzeichnis ohne Anmeldung

    Die Antwort ist keine Fehlerseite. Der Browser rendert sie direkt: Kelvaras gesamtes Mitarbeiterverzeichnis mit Tausenden Datensätzen, ausgegeben an eine Anfrage ohne Anmeldung.

  5. Wissenscheck

    Sie haben gesehen, wie eine geratene URL sensible Daten an eine Anfrage ohne Zugangsdaten zurückgab. Prägen Sie sich ein, warum der Endpunkt erreichbar war.

  6. Der DLP-Alarm trifft ein

    Sie verantworten Kelvaras People Portal. Über Nacht hat das Monitoring für ausgehenden Datenabfluss bei einer Antwort ausgelöst, die das vollständige Mitarbeiterverzeichnis einschließlich SSNs und Gehältern aus dem Netzwerk transportierte. Security Operations hat Ihnen die Details per E-Mail geschickt.

  7. Den Export-Handler öffnen

    Der Handler, der den Mitarbeiterexport erstellt, muss geändert werden. Öffnen Sie ihn und prüfen Sie, was zwischen Eingang der Anfrage und Ausgabe der Daten geschieht.

  8. Die fehlende Sperre finden

    Der Handler liest jeden Mitarbeiterdatensatz und gibt ihn zurück. Lesen Sie ihn von oben nach unten und suchen Sie nach der Zugriffskontrolle. Zwischen Anfrage und Abfrage liegt nichts.

  9. Wissenscheck

    Sie haben gesehen, wie der Handler direkt von der Anfrage zu den Daten läuft. Prägen Sie sich ein, was eine solche Route tatsächlich privat hält.

  10. Die Zugriffskontrolle ergänzen

    Setzen Sie eine echte Zugriffskontrolle an den Anfang des Handlers. Sie ermittelt die Sitzung des Aufrufers, prüft die Rolle hr_admin und lehnt alles andere ab, bevor die Datenbankabfrage läuft. Der Pfad bleibt gleich; nun schützt die Prüfung statt des Ordnernamens die Daten.

Abdeckung der Sicherheits-Frameworks

OWASP Top 10

  • A01:2025 Broken Access Control
  • A01:2021 Broken Access Control

CWE

  • CWE-425 Direct Request ('Forced Browsing')
  • CWE-862 Missing Authorization

CIS Controls

  • CIS 16 Application Software Security

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security