LKBDE11315: Aktivierung von Datenausführungsverhinderung (eng. "Data Execution Prevention" (DEP)) in Windows XPSP2 oder Windows 2003 Server


Symptom

Datenausführungsverhinderung ist automatisch aktiviert und könnte für Probleme verantwortlich sein

Cause

Verbesserung der Sicherheit durch Datenausführungsverhinderung

Solution

Datenausführungsverhinderung ist ein Feature von Windows XP Service Pack 2, Windows XP Tablet PC und Windows Server 2003. Bei Interesse findet sich eine nähere Beschreibung in der MS Knowledgebase, im Artikel KB875352.
Diese Erweiterung sorgt für zusätzliche Sicherung des Arbeitsspeichers gegen die Ausführung von Schadcode, insbesondere gegen die Ausführung von Programmcode aus dem Datensegment des Speichers, des Stack und des Heap. Dabei wird der gesamte allokierte Speicher eines Prozesses als "nicht-ausführbar" markiert, sofern er nicht explizit als "ausführbar" gekennzeichnet wird. Dies wird unterstützt durch Soft- und Hardware und funktioniert mit Intel- (XD = Execute Disable Bit) und AMD- (NX = no execute page protection) Prozessoren.

Die Konfiguration erfolgt in erster Linie durch die boot.ini Datei.

Folgende Einstellungen sind möglich:
AlwaysOn, AlwasyOff, OptIn und OptOut.

/EXECUTE -> DEP wird für das System deaktiviert, Kann für einzelne Anwendungen aktiviert werden.

/NOEXECUTE -> DEP wird für das System aktiviert, kann für einzelne Anwendungen deaktiviert werden.

/noexecute=OptIn -> DEP ist aktiviert für Systemdateien und Anwendungen in der "OptIn" Liste

/noexecute=OptOut -> DEP ist aktiviert für Systemdateien, aber nicht für Dateien in der "OptOut" Liste

/NOEXECUTE=OptIn und /NOEXECUTE=OptOut kann aus Windows heraus konfiguriert werden (Arbeitsplatz - Eigenschaften -> Erweitert - Systemleistung - Einstellungen -> Neuer Reiter "Datenausführungsverhinderung").

/noexecute=AlwaysOn -> DEP ist ohne Ausnahme systemweit aktiviert

/noexecute=AlwaysOff -> DEP ist systemweit deaktiviert

Im folgenden Beispiel ist eine Windows XP boot.ini Datei mit der Standardeinstellung "/NoExecute=OptIn":

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn

Disclaimer:

The information provided in this document is intended for your information only. Lubby makes no claims to the validity of this information. Use of this information is at own risk!

About the Author

Author: Wim Peeters - Keskon GmbH & Co. KG

Wim Peeters is electronics engineer with an additional master in IT and over 30 years of experience, including time spent in support, development, consulting, training and database administration. Wim has worked with SQL Server since version 6.5. He has developed in C/C++, Java and C# on Windows and Linux. He writes knowledge base articles to solve IT problems and publishes them on the Lubby Knowledge Platform.