Server-seitige Anforderungsfälschung

Server-Side Request Forgery (SSRF) ist eine schwerwiegende Web-Sicherheitslücke, die es einem Angreifer ermöglicht, einen Server so zu manipulieren, dass er unbeabsichtigte Anfragen stellt. Für SOC-Teams ist es von entscheidender Bedeutung, SSRF, seine potenziellen Auswirkungen und die Abhilfestrategien zum Schutz von Webanwendungen zu verstehen.
  • Einem Bericht von Positive Technologies zufolge waren 35 % der getesteten Webanwendungen für SSRF-Angriffe anfällig.
  • SSRF-Schwachstellen waren ein wesentlicher Faktor bei der viel beachteten Datenpanne bei Capital One im Jahr 2019, bei der sensible Informationen von über 100 Millionen Kunden preisgegeben wurden.
  • Was ist Server-Side Request Forgery?

    Server-Side Request Forgery (SSRF) ist eine Schwachstelle, bei der ein Angreifer einen Server dazu bringen kann, unbeabsichtigte Anfragen an interne oder externe Ressourcen zu stellen. Diese Anfragen werden vom Server selbst gestellt, der im Vergleich zu einer clientseitigen Anfrage über mehr Privilegien und Zugriff verfügen kann. SSRF kann ausgenutzt werden, um sich Zugang zu internen Systemen zu verschaffen, sensible Daten zu extrahieren oder weitere Angriffe innerhalb des Unternehmensnetzwerks durchzuführen.

    Wie Server-Side Request Forgery-Angriffe funktionieren

    Ein SSRF-Angriff umfasst in der Regel die folgenden Schritte:

    1. Identifizierung der Schwachstelle: Der Angreifer identifiziert eine Webanwendungsfunktion, die vom Benutzer eingegebene URLs verarbeitet oder HTTP-Anfragen stellen kann.
    2. Herstellen einer bösartigen Anfrage: Der Angreifer bastelt eine Anfrage, die eine URL zu einer internen oder sensiblen Ressource enthält.
    3. Ausnutzung der Sicherheitslücke: Der Server verarbeitet die bösartige Anfrage und stellt die Anfrage an die angegebene URL.
    4. Zugang zu sensiblen Daten: Die Anfrage des Servers ruft Daten von internen Systemen ab, die dann an den Angreifer zurückgesendet werden, was zu Datenlecks oder unbefugtem Zugriff führt.
    Diagramm zur Veranschaulichung des SSRF-Angriffsprozesses

    Beispiele für Server-Side Request Forgery-Angriffe aus der Praxis

    1. Capital One Data Breach (2019): Der Angreifer nutzte eine SSRF-Schwachstelle aus, um auf sensible Informationen von AWS-Metadatendiensten zuzugreifen, was zur Offenlegung von über 100 Millionen Kundendatensätzen führte.
    2. GitHub SSRF Sicherheitslücke (2020): Eine Schwachstelle in der Repository-Spiegelungsfunktion von GitHub ermöglichte es Angreifern, interne Anfragen auszulösen und so möglicherweise interne Dienste offenzulegen.

    Anzeichen für Server-Side Request Forgery-Angriffe

    1. Ungewöhnliche Muster des ausgehenden Datenverkehrs: Die Überwachung auf unerwartete ausgehende Anfragen vom Server an interne IP-Adressen oder unerwartete externe Domänen kann auf einen SSRF-Angriff hinweisen.
    2. Unerwartete Zugriffsprotokolle: Zugriffsprotokolle, die Anfragen an interne Dienste oder Ressourcen zeigen, die von außen nicht zugänglich sein sollten, sind ein Warnsignal.
    3. Anomalien in Server-Antworten: Antworten, die interne Metadaten oder sensible Informationen enthalten, die an den Benutzer zurückgegeben werden.

    Unterschiede zwischen Server-Side Request Forgery (SSRF) und Cross-Site Request Forgery (CSRF)

    Server-Side Request Forgery (SSRF) und Cross-Site Request Forgery (CSRF) sind zwei kritische Web-Sicherheitsschwachstellen, die schwerwiegende Folgen haben können, wenn sie ausgenutzt werden. Bei beiden Arten von Angriffen wird zwar das Verhalten von Webanwendungen manipuliert, sie funktionieren jedoch auf grundlegend unterschiedliche Weise und zielen auf verschiedene Aspekte von Webanwendungen ab. Das Verständnis der Unterschiede zwischen SSRF und CSRF ist für SOC-Teams unerlässlich, um geeignete Sicherheitsmaßnahmen zu implementieren und ihre Systeme wirksam zu schützen.

    Nachfolgend finden Sie eine detaillierte Vergleichstabelle, die die wichtigsten Unterschiede zwischen SSRF und CSRF hervorhebt:

    Aspekt Server-seitige Anforderungsfälschung (SSRF) Cross-Site Request Forgery (CSRF)
    Definition SSRF ist eine Schwachstelle, bei der ein Angreifer einen Server manipuliert, um unbeabsichtigte Anfragen an interne oder externe Ressourcen zu stellen. CSRF ist eine Schwachstelle, bei der ein Angreifer einen authentifizierten Benutzer dazu bringt, unbeabsichtigte Anfragen an eine Webanwendung zu stellen.
    Ziel Der Server selbst, so dass er im Namen des Angreifers nicht autorisierte Aktionen durchführt. Der Browser des Benutzers, der die authentifizierte Sitzung des Benutzers mit einer Webanwendung ausnutzt.
    Angriffsvektor Direkte Manipulation serverseitiger Anfragen, oft durch vom Benutzer bereitgestellte Eingaben, die der Server verarbeitet. Nutzt Social Engineering, um Benutzer dazu zu bringen, auf bösartige Links zu klicken oder bösartige Websites zu besuchen, die in ihrem Namen Anfragen senden.
    Auswirkungen Dies kann zu unbefugtem Zugriff auf interne Dienste, Datenexfiltration und potenziell schwerwiegenden Beeinträchtigungen des internen Netzwerks führen. Kann zu unbefugten Handlungen führen, z. B. zum Ändern von Benutzereinstellungen, zum Durchführen von Transaktionen oder zum Veröffentlichen von Inhalten ohne Zustimmung des Benutzers.
    Gemeinsame Indikatoren Ungewöhnliche Muster des ausgehenden Datenverkehrs, unerwartete Zugriffsprotokolle auf interne Ressourcen und Anomalien bei Serverantworten. Unerwartete Änderungen in den Einstellungen des Benutzerkontos, unerklärliche Finanztransaktionen und anormale Aktivitätsprotokolle.
    Strategien der Prävention
    • Benutzereingaben validieren und bereinigen
    • Ausgehende Anfragen einschränken
    • Segmentierung des Netzes
    • Sicherheitskopfzeilen verwenden
    • Regelmäßige Sicherheitsaudits
    • Anti-CSRF-Tokens verwenden
    • SameSite-Cookie-Attribut
    • Re-Authentifizierung für sensible Aktionen
    • Aufklärung der Nutzer über verdächtige Links
    • Regelmäßige Sicherheitstests

    Wirksame Präventionsstrategien

    1. Validierung und Bereinigung von Eingaben:

    • Validieren und bereinigen Sie alle Benutzereingaben und stellen Sie sicher, dass nur zulässige URLs und Domänen zugelassen werden.
    • Implementieren Sie eine strenge Whitelist der URLs, die der Server anfordern kann, um unbeabsichtigte Ziele zu verhindern.

    2. Netzsegmentierung und -isolierung:

    • Segmentieren Sie das Netz, um sicherzustellen, dass Webserver nicht direkt auf interne Dienste zugreifen können, ohne die entsprechenden Sicherheitsprüfungen zu durchlaufen.
    • Verwenden Sie Firewalls und Zugriffskontrolllisten (ACLs), um den Serverzugriff auf sensible interne Ressourcen zu beschränken.

    3. Verwendung von Sicherheitskopfzeilen und -protokollen:

    • Implementieren Sie Sicherheits-Header wie die Content Security Policy (CSP), um die Ressourcen einzuschränken, die von der Anwendung geladen oder angefordert werden können.
    • Erzwingen Sie HTTPS, um eine verschlüsselte Kommunikation zwischen dem Server und externen Ressourcen zu gewährleisten und das Risiko des Abfangens von Daten zu verringern.

    4. Überwachung und Protokollierung:

    • Überwachen Sie kontinuierlich den ausgehenden Datenverkehr und protokollieren Sie alle serverseitigen Anfragen, insbesondere solche an interne IP-Adressen oder unerwartete Domänen.
    • Verwenden Sie Systeme zur Erkennung von Anomalien, um ungewöhnliche Anfragemuster zu erkennen, die auf einen SSRF-Versuch hindeuten könnten.

    5. Regelmäßige Sicherheitsaudits und Penetrationstests:

    • Durchführung regelmäßiger Sicherheitsaudits und Penetrationstests zur Ermittlung und Behebung von SSRF-Schwachstellen.
    • Verwenden Sie automatisierte Tools wie OWASP ZAP, Burp Suite und SSRF-spezifische Scanner, um potenzielle SSRF-Schwachstellen zu erkennen.

    6. Grundsatz der geringsten Privilegierung:

    • Wenden Sie das Prinzip der geringsten Berechtigung an und stellen Sie sicher, dass die Webanwendung nur über die minimal erforderlichen Berechtigungen verfügt, um ihre Funktionen auszuführen.
    • Beschränken Sie die Möglichkeiten des Servers, externe Anfragen nur dann zu stellen, wenn es unbedingt notwendig ist.

    Die Sicherheit Ihrer Webanwendungen gegen SSRF-Angriffe ist für die Wahrung der Datenintegrität und den Schutz sensibler Informationen von entscheidender Bedeutung. Wenn Sie über SSRF-Schwachstellen in Ihren Anwendungen besorgt sind, kann unser Team von Vectra AI Ihnen helfen. Holen Sie sich eine kostenlose Tour durch die Vectra AI Plattform, um herauszufinden, wie wir Sie bei der Verstärkung Ihrer Verteidigung gegen SSRF und andere Cyber-Bedrohungen unterstützen können.

    Häufig gestellte Fragen

    Was ist Server-Side Request Forgery (SSRF)?

    Was sind die üblichen Anzeichen für einen SSRF-Angriff?

    Wie kann SSRF verhindert werden?

    Wie hilft die Eingabevalidierung bei der Verhinderung von SSRF?

    Wie können Sicherheits-Header bei der Eindämmung von SSRF helfen?

    Wie funktioniert ein SSRF-Angriff?

    Was sind einige Beispiele für SSRF-Angriffe?

    Was sind die Auswirkungen einer SSRF-Schwachstelle?

    Welche Rolle spielt die Netzsegmentierung bei der SSRF-Minderung?

    Welche Werkzeuge können zur Aufdeckung von SSRF-Schwachstellen verwendet werden?