EMZETT.
Login

Open Redirect: unsichere Weiterleitungen

Kurz: Ein Open Redirect liegt vor, wenn eine Webseite Nutzer auf eine Adresse weiterleitet, die aus einem Parameter der Anfrage stammt, ohne sie zu prüfen. Angreifer missbrauchen das, um Opfer über die vertrauenswürdige Seite auf Betrugsseiten zu lenken.

Genauer: Beispiel: https://shop.example/login?next=https://boese.example. Nach der Anmeldung leitet die Seite blind zu next weiter. Der Link beginnt mit der echten Domain und wirkt vertrauenswürdig.

Im Detail

  • Gefahr: Phishing wirkt glaubwürdiger. Zudem lassen sich Anmeldevorgänge (OAuth-Rücksprungadressen) angreifen, bei denen Codes oder Token an die Zieladresse gelangen.
  • Abwehr 1: Nur relative Pfade erlauben (/konto), keine vollständigen Adressen. Vorsicht bei //boese.example und /\boese.example, die Browser als fremde Adresse deuten.
  • Abwehr 2: Eine Erlaubnisliste erlaubter Ziele. Die Adresse parsen und den Host mit der Liste vergleichen, nicht mit „beginnt mit”.
  • Abwehr 3: Statt der Adresse eine Kennung übergeben (?next=konto), die der Server selbst in einen Pfad übersetzt.
  • Warnseite: Muss man externe Ziele zulassen, vorher eine Zwischenseite „Sie verlassen diese Seite” anzeigen.
  • Prüfen: Parameter wie next, url, redirect, return_to in Tests mit fremden Adressen ausprobieren.

Siehe auch: Phishing, OAuth