Geleakte Access Token

Geleakte Access Token

Ein durchgesickerter Token ohne Ablaufdatum ist ein dauerhafter Hauptschlüssel.

Was ist Geleakte Access Token?

Ein persönliches Zugriffstoken fungiert als das Konto, das es erstellt hat. Präsentieren Sie es und die API behandelt Sie als diesen Entwickler, ohne Passwort und ohne zweiten Faktor. Umfang und Ablauf begrenzen den Schaden; Ein klassischer Token mit breitem Organisationszugriff und ohne Ablauf hat auch keines von beiden. Sie wählen ein Token aus einem öffentlichen Kern aus, listen die privaten Repositorys einer Organisation auf, klonen dann eines und übertragen einen Commit zurück als seinen Besitzer. Sie widerrufen es, geben einen detaillierten, auf ein Repository beschränkten Ersatz erneut aus und aktivieren das geheime Scannen und den Push-Schutz.

Was Sie lernen in Geleakte Access Token

Geleakte Access Token — Trainingsschritte

  1. Bobs Gist-Harvester

    Bob liest keine Gists von Hand. Er lässt einen kleinen Scraper laufen, der sich seitenweise durch den öffentlichen Gist-Feed der Plattform arbeitet und jede Datei nach allem durchsucht, was wie Zugangsdaten aussieht. Der Feed steht jedem offen, ganz ohne Konto — der komplette Strom öffentlicher Gists ist damit sein Suchrevier.

  2. Den Harvester starten

    Bob startet den Scraper. Er holt den öffentlichen Gist-Feed und gleicht jede Datei mit seinen Mustern für Zugangsdaten ab. Die meisten Treffer sind tot — abgelaufene oder deaktivierte Schlüssel. Einer aber ist noch aktiv: ein Personal Access Token von Loomwick, das im Deploy-Gist eines Entwicklers liegt.

  3. Den markierten Gist öffnen

    Bob öffnet den Gist, den der Scraper markiert hat. Der kleine Deploy-Helfer ist ein Geschenk: Er enthält das Token vollständig, nennt das Ziel-Repository und zeigt genau, wie es eingesetzt wird.

  4. Was das Token darf

    Bevor er es ernsthaft einsetzt, fragt Bob die Plattform, was für ein Token er da hat. Er ruft die API von Loomwick auf und legt das Token in einen Authorization-Header; die Antwort beschreibt das Token selbst. Es gehört einem ganz normalen Entwickler, nicht einem Admin — und trotzdem sind die Scopes umfassend, ein Ablaufdatum fehlt ganz.

  5. Die privaten Repositorys auflisten

    Jetzt setzt Bob das Token ein. Er lässt sich von der API die Repositorys der Organisation auflisten — und zurück kommen neben dem öffentlichen auch die privaten. Bob hatte nie ein Konto bei Loomwick. Das Token allein genügt.

  6. Ein privates Repo klonen

    Mit dem Token klont Bob ein privates Repository direkt auf seinen eigenen Rechner. Der Gist hat ihm beides geliefert: die Zugangsdaten und das Repository, auf das sie gemünzt sind. Der Klon holt billing-core vollständig herunter — Quellcode, Konfiguration und Historie.

  7. Die Webhook-Datei öffnen

    Lesezugriff wäre schon schlimm genug, doch das Token darf auch schreiben. Bob öffnet im geklonten Repository eine Webhook-Datei und sucht eine unauffällige Stelle für eine eigene Zeile.

  8. Die Änderung einschleusen

    Bob fügt eine einzige Zeile hinzu. Jedes Abrechnungsereignis, das der Dienst weiterleitet, landet nun nicht nur im internen Ledger, sondern auch bei seinem eigenen Collector. Eine kleine, unauffällige Änderung — genau die Sorte, die in einem hektischen Review durchrutscht.

  9. Die Änderung committen

    Bob committet die Änderung. Die Commit-Nachricht klingt nach einer harmlosen Anpassung am Forwarder, doch im Diff steckt still und leise seine Exfiltrationszeile.

  10. Im Namen des Entwicklers pushen

    Anschließend pusht Bob den Commit über die authentifizierte Repository-URL zurück zu Loomwick. Die Plattform nimmt ihn an: Für sie ist das Token Maya, und so landet der Schreibzugriff auf dem Default-Branch. Ein geleaktes Token bedeutet eben nicht nur Lesezugriff. Es trägt die komplette Identität des Entwicklers — samt der Macht, zu ändern, was ausgeliefert wird.

Abdeckung der Sicherheits-Frameworks

CWE

  • CWE-522 Insufficiently Protected Credentials
  • CWE-798 Use of Hard-coded Credentials

MITRE ATT&CK

  • T1552.001 Unsecured Credentials: Credentials In Files
  • T1078 Valid Accounts

CIS Controls

  • CIS 5 Account Management
  • 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.AA Identity Management, Authentication, and Access Control
  • PR.PS Platform Security