OWASP Top 10 – Teil 10: Server-Side Request Forgery (SSRF)

Was bedeutet „SSRF“?

Bei einem Server-Side Request Forgery (SSRF) wird ein Server dazu gebracht, unerwartete oder ungewollte Anfragen zu verschicken – oft innerhalb des eigenen Netzwerks.

Das Besondere:
Der Angreifer schickt seine Anfrage nicht direkt an das Ziel, sondern nutzt den verwundbaren Server als Proxy. So kann er Systeme erreichen, die von außen eigentlich nicht zugänglich sind.

Typische Beispiele aus der Praxis

  • Interne Ressourcen auslesen
    – Eine Webanwendung erlaubt es, eine URL für ein Bild anzugeben. Statt einer externen URL gibt der Angreifer http://localhost/admin ein und ruft damit interne Admin-Schnittstellen ab.
  • Cloud-Metadaten abfragen
    – Viele Cloud-Anbieter stellen sensible Informationen (z. B. Zugangstokens) über interne Adressen bereit. Mit SSRF können Angreifer diese Daten abgreifen.
  • Firewall-Bypass
    – Der Server hat Zugriff auf interne Systeme, die eigentlich durch Firewalls geschützt sind.

Warum ist das so gefährlich?

  • SSRF kann Angreifern Zugang zu internen Diensten und Netzwerken verschaffen.
  • Besonders kritisch in der Cloud, weil hier oft hochsensible Informationen über interne Schnittstellen abrufbar sind.
  • SSRF wird häufig als Einstiegspunkt genutzt, um sich tiefer ins System zu bewegen.

Wie schützt man sich?

  1. Eingaben validieren
    – Nur erlaubte und geprüfte URLs zulassen (Whitelist statt Blacklist).
  2. Externe Requests einschränken
    – Der Server sollte nur dahin kommunizieren dürfen, wo es unbedingt nötig ist.
  3. Metadaten-Endpunkte absichern
    – In Cloud-Umgebungen (z. B. AWS, Azure) Schutzmechanismen aktivieren, damit Metadaten nicht frei zugänglich sind.
  4. Netzwerksegmentierung nutzen
    – Trennung von internen und externen Diensten, sodass ein SSRF nicht direkt Schaden anrichtet.
  5. Security-Tests einplanen
    – Penetrationstests und Scanner einsetzen, die speziell auf SSRF prüfen.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert