JavaScript ist eine der Kerntechniken des modernen Internet, birgt aber auch einige Risiken.
- Mit Hilfe von Javascript kann man ein Vielzahl von Informationen über den Browser und das Betriebssystem auslesen. Bildschirmgröße, Farbeinstellungen, installierte Schriftarten... Diese Informationen können zu einem individuellen Fingerabdruck des Browsers verrechnet werden (siehe: Tracking Techniken in der Einleitung).
- EverCookie Techniken nutzen Javascript, um zusätzliche Markierungen im Browser anzulegen und gelöschte Tracking Cookies wiederherzustellen.
- Bösartiger Javascript Code kann aktiv Sicherheitslücken im Browser ausnutzen und den Rechner kompromittieren. Im Januar 2013 lieferten die Server des Werbenetzwerkes OpenX bösartige Scripte aus, die den Rechner über Sicherheitslücken im Internet Explorer kompromittierten. Auch die bisher bekannten Exploits von NSA/FBI gegen den TorBrowser nutzten bösartiges Javascript.
- Forscher der Columbia University haben eine side-channel attack vorgestellt, die komplett als Javascript im Browser läuft: The Spy in the Sandbox -- Practical Cache Attacks in Javascript (PDF). Mit dem Angriff können beliebige Prozesse außerhalb des Browsers analysiert werden ohne den Rechner zu kompromittieren (spurenfrei). Seitenkanalangriffe sind u.a. auch ein moderner Angriff gegen Kryptografie. OpenSSL wurde z.B. 2003 erfolgreich mit der Vaudenay timing attack angegriffen.
- Bösartiger Javascript Code kann sich auch gegen Dritte richten, ohne das der Nutzer es bemerkt. Chinas Great Cannon injiziert Javascript Code beim Aufruf chinesischer Webseiten, um die PCs der Nutzer als Botnet für DDoS-Attacken zu nutzen.
Prinzip Whitelisting
Ein generelles Abschalten ist heutzutage nicht sinnvoll. Ähnlich dem Cookie-Management kann man JavaScript für vertrauenswürdige Websites zur Erreichung der vollen Funktionalität erlauben, im allgemeinen jedoch deaktivieren. Gute Webdesigner weisen den Nutzer darauf hin, dass ohne Javascript eine deutliche Einschränkung der Funktionalität zu erwarten ist.