Nur wenige Anwendungen nutzen die unter Windows verfügbare Datenausführungsverhinderung (Data Execution Prevention, DEP) und Speicherverwürfelung (Adress Space Layout Randomisation, ASLR), um Angriffe auf Schwachstellen ins Leere laufen zu lassen. Zu diesem Ergebnis kommt der Sicherheitsdienstleister Secunia in einer Untersuchung von 16 populären Anwendungen wie Browsern, Mediaplayern und Office-Anwendungen.

DEP verhindert, dass ein Angreifer seinen über einen Buffer Overflow auf den Stack oder Heap geschriebenen Code ausführen kann – den Overflow selbst kann es nicht verhindern. Der Angreifer muss aber nicht zwingend sofort seinen eigenen Code ausführen. Vielmehr kann er durch Manipulation der Rücksprungadresse in ein bereits von der Anwendung geladenes Codesegment springen. Üblicherweise versuchen Angreifer in bestimmte Funktionen der C-Bibliothek zu springen (Return-into-libc-Attacke).

Da die Funktionen immer an die gleiche Stelle geladen werden, weiß ein Angreifer, an welche Stelle sein Code springen muss. Diese Vorhersage soll nun wiederum ASLR erschweren. Windows 7 und Vista wählen für den Speicherort des geladenen Codes eines Prozesses, die dazugehörige DLLs, den Stack und Heaps zufällige Adressen. Das lässt sich zwar auch wieder mit bestimmten Tricks aushebeln, allerdings macht es Exploits unzuverlässiger – und oftmals hat eine Angreifer nur einen Schuß.

Mehr als die Hälfte der untersuchten Anwendungen nutzt keine der Windows-Sicherheitsfunktionen. Vergrößern Windows überlässt es der Anwendung, beim Laden durch bestimmte Flags zu signalisieren, ob es DEP und ASLR nutzen will. Während die meisten Microsoft-Anwendungen regen Gebrauch von den Funktionen machen, nutzen laut Secunia Anwendungen anderer Hersteller die Funktionen aber oft gar nicht, nur teilweise oder fehlerhaft. Die Browser Firefox, Opera und Safari beispielsweise unterstützen zwar DEP, aber kein ASLR. Einzig Chrome nutzt beide Optionen.

Mediaplayer wie Winamp, RealPlayer, QuickTime und VLC nutzen gar keine der Optionen. Apple hatte zwar schon Mitte 2008 damit geworben, in QuickTime einen "Exploit Prevention mechanisms" (XPMs) auf Basis von ASLR realisiert zu haben. Bei genauerem Hinsehen ließ sich aber erkennen, dass ASLR für zahlreiche Bibliotheken und Anwendungen von QuickTime weiterhin deaktiviert ist.

Nach Meinung von Secunia dürften die unzureichende Nutzung der Optionen für Virenautoren ein weiterer Grund sein, ihre Angriffe auf Anwendungen anderer Hersteller als Microsoft zu verlagern. (dab)

Quelle: Heise.de