Zum Inhalt springen

Server ruft eine URL aus der Anfrage ab (SSRF)

Prüfregel · RSC-SEC-144

  • Sicherheit
  • Schweregrad: Hoch
  • CWE-918
  • OWASP A10-2021

Findet Server-Code, der `fetch`, axios, got oder ky mit einer URL aus Request-Body, Query oder Pfad aufruft — ohne Allowlist und ohne Prüfung des Hosts.

Warum das zählt

Link-Vorschau, Bild-Proxy, „Website analysieren“: KI-Generatoren bauen diese Funktionen gern und fast immer gleich — die URL kommt aus dem Body und geht direkt in `fetch`. In einer Untersuchung von Tenzai bauten alle fünf getesteten Code-Agenten genau diese Lücke.

Der Server ruft dann jede Adresse auf, die ein Fremder ihm gibt: interne Dienste, Metadaten-Endpunkte der Cloud, Admin-Oberflächen im selben Netz — mit der Netzadresse und den Rechten eures Servers. Was zurückkommt, landet oft gleich in der Antwort.

Fix: Vor dem Abruf `new URL(url)` parsen, das Protokoll auf https und den `hostname` auf eine feste Liste beschränken. Wo beliebige Ziele gewollt sind (Link-Vorschau), private Adressbereiche nach der DNS-Auflösung ablehnen und Weiterleitungen nicht automatisch folgen.

Prüfstufe

  • Quellcode aus Source Maps
  • Repo-Zugang (Deep-Scan)

So behebt ihr es

Ziel-Host gegen eine feste Liste erlaubter Hosts prüfen (`new URL(url).hostname`), nur https zulassen und private sowie lokale Adressen ablehnen.

Eigene App kostenlos prüfen