Sicherheitslücke in allen 32bit Windows-Versionen
Erstellt von acidknoll am Samstag 6. Februar 2010
Die Sicherheitlücke steckt in allen 32bit Windows-Versionen, welche die Ntvdm.exe (NT Virtual DOS Maschine) verwenden. Die Lücke kann genutzt werden, um in eingeschränkten Konten die vollen Administratorrechte zu erlangen. 64bit Varianten sind nicht betroffen, da diese keine 16bit-Software unterstützen und somit keine Ntvdm.exe enthalten. Ein Patch steht momentan nicht zur Verfügung.
Da in der Regel keine 16bit-Programme ausgeführt werden müssen, kann sich folgendermassen beholfen werden:
Den Besitz der Datei Ntvdm.exe übernehmen (Eigenschaften -> Sicherheit -> Erweitert), sich die vollen Zugriffsrechte zuweisen und die Datei mittels Löschen bzw. Umbenennen unschädlich machen.
oder:
Grundsätzlich lässt sich der DOS- und 16-Bit-Windows-Emulationsmodus abschalten, indem man den DWORD-Wert VDMDisallowed im Registry-Key HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat auf 1 setzt. In neueren Windows-Versionen ist dies auch per Group-Policy möglich.
Dazu muss man den Editor für die Gruppenrichtlinie starten und unter Computerkonfiguration/Administrative Vorlagen/Windows-Komponenten/Anwendungskompatibilität die Option “Zugriff auf 16-Bit-Anwendungen verhindern” aktivieren. Im Test von heise Security funktionierte der Exploit mit diesen Einstellungen unter Windows 7 Ultimate nicht mehr. Die Einstellung soll bei den meisten Anwendern keine Kompatibilitätsprobleme verursachen, sofern man eben keine 16-Bit-Anwendungen mehr verwendet.
[Update]: Die Deaktivierung der oben genannten Option ist über die Gruppenrichtlinie erst seit Windows 2003 verfügbar. Zudem haben einige Windows-Versionen keinen Editor für Gruppenrichtlinen. Alternativ kann man auch in der Registry den Schlüssel \HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat erzeugen und dort als D-Word-Wert VDMDisallowed = 1 anlegen. Unter XP lief der Exploit anschließend nicht mehr, Automatisch funktioniert das Anlegen des Schlüssels, wenn man sich die Datei vdmdisallow.reg mit folgenden Inhalt anlegt:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat]
“VDMDisallowed”=dword:00000001
und die Datei anschließend doppelklickt (Adminrechte vorausgesetzt)
Ormandys Exploit besteht aus der ausführbaren Datei vdmallowed.exe und der Library vdmexploit.dll, die mittels DLL-Injection eingeschleust