Lateral Movement: Manipulation von Zugriffstoken

  • Home
  • Lateral Movement: Manipulation von Zugriffstoken

Was sind Zugriffstoken?

Zugriffstoken werden von Windows-Anwendungen für den Zugriff auf APIs verwendet. Ein Zugriffstoken enthält Informationen darüber, wer einen Prozess initiiert hat, die Anwendung, die das Token generiert hat, und die Ablaufzeit des Tokens.

Was ist die Manipulation von Zugriffstokens?

Ein Angreifer kann Zugriffstoken manipulieren, um einen Prozess so aussehen zu lassen, als sei er von einem anderen Benutzerkonto initiiert worden, während die Anfrage in Wirklichkeit von dem Konto initiiert worden sein könnte, das der Angreifer in Ihrem Netzwerk kompromittiert hat.

Angreifer nutzen Zugriffstoken, um ihre Privilegien von der administrativen Ebene auf eine SYSTEM-Ebene zu erhöhen, um böswillige Aktivitäten durchzuführen und aus der Ferne auf Systeme in Ihrem Netzwerk zuzugreifen, um verschiedene Systemprozesse zu ihrem Vorteil auszunutzen.

Wie wird die Manipulation von Zugriffstokens durchgeführt?

Ein Angreifer muss Zugang zu einem privilegierten Benutzerkonto haben, um Zugriffstoken eines beliebigen Prozesses in der Windows-Umgebung zu erlangen.

Die Angreifer erhalten Zugriffstoken auf eine der folgenden drei Arten:

  1. Stehlen von Zugriffstoken
  2. Ein Angreifer kann die folgenden eingebauten Windows-API-Funktionen verwenden, um vorhandene Token anderer Prozesse zu kopieren und zu verwenden, um bösartige Aktivitäten durchzuführen:

    • Die Funktion DuplicateTokenEx() wird verwendet, um doppelte Token von vorhandenen Zugriffstoken zu erstellen.
    • Die Funktion ImpersonateLoggedOnUser() wird verwendet, um sich als ein anderer Benutzer auszugeben und den Prozess auszuführen. Die Angreifer stellen sicher, dass der verkörperte Benutzer über alle erforderlichen Berechtigungen verfügt, um den Prozess auszuführen.
    • Außerdem können die Angreifer die Funktion SetThreatToken() verwenden, um einem Thread ein imitiertes Token zuzuweisen.
  3. Erstellen eines neuen Prozesses mit einem gestohlenen Zugriffstoken
  4. Angreifer können ein dupliziertes Token verwenden, um mit der Funktion CreateProcessWithTokenW() einen neuen Prozess zu erstellen . Diese Funktion ermöglicht es den Angreifern, Token zu erstellen, die den Sicherheitskontext eines beliebigen Benutzers implementieren, für den sie sich ausgeben wollen.

  5. Erstellen von Anmeldesitzungen
  6. Angreifer können aus der Ferne Anmeldesitzungen für Benutzer erstellen, wenn sie über die Anmeldedaten eines beliebigen Benutzerkontos verfügen, indem sie die Funktion LogonUser() verwenden.Sie können dann ein Token im Sicherheitskontext des angemeldeten Benutzers erhalten, das sie einem Thread zuweisen können, um einen Prozess auszuführen.

Hinweis: runas-Befehl

Jeder Benutzer kann den runas-Befehl verwenden und Operationen durchführen, indem er sich als ein anderer Benutzer ausgibt. Dieser Kontext wird häufig von Systemadministratoren verwendet, da sie sich als Standardbenutzer bei Systemen anmelden und mit dem runas-Befehl weitere administrative Prozesse ausführen.

Bewährte Praktiken zur Eindämmung der Manipulation von Zugriffstokens

  • Da Angreifer nur von einem privilegierten Benutzerkonto aus Zugriffstoken und deren integrierte Funktionen in vollem Umfang nutzen können, wird dringend empfohlen, alle privilegierten Benutzerkonten auf verdächtige Aktivitäten zu überwachen, da diese Konten Berechtigungen für System- und Benutzerkonten erstellen, aktivieren, deaktivieren und zuweisen können.
  • Wenden Sie das Prinzip der geringsten Privilegien (POLP) an, um sicherzustellen, dass keine Benutzer oder Rollen mehr als die erforderlichen Privilegien haben.
  • Verwalten Sie Ihre Gruppenrichtlinien regelmäßig, um zu überprüfen, ob nur autorisiertes Personal Zugriffstoken erstellen, duplizieren oder ersetzen kann.
  • Überwachen Sie Anmeldungen, die über die Befehlszeilenschnittstelle erfolgen.
  • Die Verwendung des runas-Befehls muss in der Nähe überwacht werden, um Nachahmungen zu erkennen.

Wie können Sie Ihr Netzwerk effizient überwachen?

Sie können die oben genannten Best Practices befolgen und außerdem die Aktivitäten von Benutzern und Geräten in Ihrem Netzwerk ständig überwachen, um den Sicherheitsrahmen zu stärken. Die Überwachung der Protokolle Ihrer Perimeter-Defense-Geräte, Ihrer Systemprotokolle sowie der privilegierten und sonstigen Benutzeraktivitäten kann ziemlich aufwändig sein, um Bedrohungen in Ihrem Netzwerk zu entschärfen. Sie können eine Log-Management-Lösung verwenden, um diesen Aufwand zu vermeiden.

EventLog Analyzer ist eine Protokollverwaltungslösung, die Protokolle von all Ihren Netzwerkgeräten an einem zentralen Ort sammeln, analysieren und auswerten kann. Mithilfe seiner leistungsstarken Korrelations-Engine werden Aktivitäten aus allen Teilen Ihres Netzwerks miteinander in Beziehung gesetzt. Es kann privilegierte Benutzeraktivitäten überwachen und Berichte über Benutzeranmeldungen, Benutzerabmeldungen, fehlgeschlagene Anmeldungen, erfolgreiche und fehlgeschlagene Validierung von Benutzerkonten erstellen, um nur einige zu nennen. Er kann anomale Aktivitäten identifizieren und als Bedrohung kennzeichnen. EventLog Analyzer ermöglicht es Ihnen, Echtzeit-Warnungen zu konfigurieren, um Sie im Falle eines Angriffs per SMS und E-Mail zu benachrichtigen. Sehen Sie sich jetzt weitere Funktionen von EventLog Analyzer an.

Products mentioned on this page:

Kürzlich hinzugefügte Kapitel