Cross-Site-Authentication-Attacke
Eine Cross-Site-Authentication-Attacke (kurz: XSA) ist ein Angriff gegen eine Webanwendung, mittels der ein Angreifer fremde Passwörter ausspionieren kann. Hierbei handelt es sich um eine Form der Cross-Site-Request-Forgery.
Dieses Verhalten kann ausgenutzt werden, wenn ein Webforum, ein Weblog oder ähnliche Systeme das Einbinden von Bildern durch nicht vertrauenswürdige Benutzer zulässt. Ein Angreifer bindet dazu ein beliebiges Bild in einen Beitrag ein, welches durch den Webserver durch HTTP Auth geschützt ist. Ruft ein Benutzer den Beitrag auf, fordert ihn sein Webbrowser auf, eine Benutzer/Passwort-Kombination einzugeben, welche dann vom Webserver des Angreifers gespeichert werden kann.
Diese Sicherheitslücke erfordert vom Benutzer jedoch, dazu verleitet zu werden, einen Benutzernamen und ein Passwort einzugeben. Die Passwortabfrage erscheint dabei nicht als HTML-Formular, wie es beim Einloggvorgang auf einer (Forums-)Website üblich ist, sondern in einem eigenen Fenster, und ist somit auffällig. Bei einer Webseite, auf der normalerweise keine Passwörter verlangt werden, ist es schon unwahrscheinlicher, dass der Benutzer eine Kombination aus Benutzername und Passwort eingibt, der Angreifer weiß dann auch nicht, wofür diese Kombination überhaupt gilt.
Cross-Site-Authentication-Attacken werden durch Browser begünstigt, die im Passwort-Dialog den Namen der zur Passworteingabe auffordernden Website nicht deutlich genug anzeigen.
Schutz
Gegen diese Art von Angriffen gibt es einige Schutzmöglichkeiten:
- Der Dienstanbieter kann dafür sorgen, dass keine Bilder oder sonstigen Inhalte aus externen Quellen in die Webseite eingebunden werden können. Dies geht Hand in Hand mit dem Verhindern von Cross-Site-Scripting.
- Der Browserhersteller kann im Falle eines vermuteten Angriffs deutliche Warnhinweise ausgeben. Eine weitere Möglichkeit ist, bei eingebetteten Elementen von fremden Webserver grundsätzlich die Authentifizierungsmechanismen zu unterbinden.
- Der Benutzer kann durch Aufmerksamkeit feststellen, ob sich die Webseite ungewöhnlich verhält. Wenn das Passwort normalerweise in einem Formular abgefragt wird, ist es verdächtig, wenn auf einmal ein neues Fenster erscheint.
Weblinks
- Beispielseite (Achtung: keine echten Passwörter eingeben!)
- The Cross Site Auth (XSA) Attack (Initialer Blog-Eintrag)
- Linux-Magazin-Artikel (deutsch)
- Linux-Magazine-Artikel (englisch; PDF-Datei; 151 kB)