Tags: Windows 7, Sicherheit
Die Unterstützung für Datenausführungsverhinderung (Data Execution Prevention, DEP) hat Microsoft mit Windows XP SP2 beziehungsweise Windows Server 2003 SP1 eingeführt. Seitdem ist sie bei allen Windows-Versionen dabei. Es handelt sich um eine Technik zur Vermeidung schädlicher Auswirkungen von Buffer Overflows, bei denen Daten als Code ausgeführt und auf diese Weise potentiell Schadcode gestartet werden könnte.
NX-Bit: Zusammenspiel von Hardware und Betriebssystem
Bei der Datenausführungsverhinderung wird das Problem der Ausführung von nicht dafür bestimmtem Code dadurch gelöst, dass der Stack oder ein anderer für Daten bestimmter Speicherbereich, genauer der Eintrag für eine Speicherseite im Seitenverzeichnis, vom Betriebssystem durch ein so genanntes NX-Bit gekennzeichnet wird (no execute). Versucht ein fehlerhaftes Programm oder Schadcode nun eine derart markierte Speicherseite auszuführen, fängt die CPU dies ab und meldet dies über einen Hardware-Interrupt an das Betriebssystem. Dieses beendet daraufhin zwangsweise das betreffende Programm.
Systemsteuerung: DEP konfigurieren
Windows kennt 4 Einstellungen für DEP. Zwei davon kann man per GUI in der Systemsteuerung setzen, die anderen nur per bcdedit.exe. Mit Gruppenrichtlinien kann man DEP nicht konfigurieren: Es handelt sich um einen Arbeitsmodus des Windows-Kernels, der nur jeweils beim Bootvorgang gesetzt werden kann.
In der Systemsteuerung verstecken sich die Einstellungen unter System und Sicherheit → System → Erweiterte Systemeinstellungen → Erweitert → Leistung → Datenausführungsverhinderung. Die für Workstations voreingestellte Option ist Datenausführungsverhinderung nur für erforderliche Windows-Programme und -Dienste einschalten (OptIn). Normale Anwendungen werden bei dieser Einstellung nicht von DEP erfasst und können auch nicht manuell zu einer Liste zu überwachender Anwendungen hinzugefügt werden – dies bedarf der Neu-Compilierung der betreffenden Anwendung mit eingeschalteter NXCompat-Option.
Die Voreinstellung für Server ist der höhere Schutzlevel Datenausführungsverhinderung für alle Programme und Dienste mit Ausnahme der ausgewählten einschalten (OptOut). Hierbei werden alle Anwendungen durch DEP überwacht. Sollte ein Programm mit dieser Option nicht laufen, stellt dies ein Kompatibilitätsproblem dar. Gibt es keine aktualisierte Version und kann der Hersteller keine Abhilfe schaffen, kann man per Schaltfläche Hinzufügen einzelne ausführbare Dateien von DEP ausnehmen.
Eine andere Variante besteht darin, die inkompatible Anwendung per Software-Fix mittels ACT von DEP auszunehmen. Der entsprechende Shim heißt DisableNX. Diese Kompatibilitätsoption kann man dann auch zentral in der Organisation verteilen. Eine solche Anwendung taucht dann nicht sichtbar in der Ausnahme-Liste in der Systemsteuerung auf.
bcdedit: Abschalten, Aktivieren, Abschalten verhindern
Die Optionen in der Systemsteuerung schalten jeweils Boot-Optionen von Windows um und werden deshalb nur nach einem Neustart wirksam. In einer Eingabeaufforderung mit Administratorrechten kann man per bcdedit /enum die gerade wirksame Einstellung – OptIn oder OptOut – einsehen. Zwei weitere Möglichkeiten der Konfiguration kann man nur per bcdedit.exe direkt setzen:
- bcdedit /set {current} nx AlwaysOn schaltet für das aktuell aktive Betriebssystem DEP ein, aber lässt weder eine Ausnahmeliste noch die Änderung der Einstellungen per Systemsteuerung zu. Auch eventuelle Kompatibilitätsoptionen werden ignoriert.
- bcdedit /set {current} nx AlwaysOff schaltet für das aktuell aktive Betriebssystem DEP komplett ab und verhindert das Einschalten per Systemsteuerung.
Beide Einstellungen bewirken, dass die entsprechenden Konfigurationsmöglichkeiten in der Systemsteuerung deaktiviert werden und können jeweils nur wieder mit bcdedit.exe
in einer Eingabeaufforderung mit Administratorrechten geändert werden. Sie werden jeweils nach einem Neustart des Betriebssystems wirksam.
Täglich Know-how für IT-Pros mit unserem Newsletter
Ähnliche Beiträge
- Microsoft öffnet verlängerten Support für Windows 7 auch für kleinere Firmen
- Erweiterter Support für Windows 7 bis 2023: Kosten pro Gerät verdoppeln sich jährlich
- Praxis: Die Schadsoftware WannaCry erkennen und abwehren
- Updates für Windows 7 und 8.1: Security-Fixes, Rollups und Rollup-Previews in jedem Monat
- Rollup: Microsoft bringt kumulatives Update für Windows 7 SP1
Weitere Links
3 Kommentare
Wenn ich BEP Ausschalten will, kommt eine Fehlermeldung : Der Speicher für die Startkonfigurationsdaten konnte nicht geöffnet werden. Zugriff verweigert.
Wenn ich es als Adminstrator ausführ, kommt diese Meldung :
Fehler beim Festlegen der Elementdaten.
Der Wert wird durch die Richtlinie für sichere Starten geschützt und kann nicht geändert oder gelöscht werden.
Bitte um hilfe.
Wenn ich DEP wieder einschalten will kommt die meldung das der vorgang erfolgreich beendet wurde obwohl ich diesen befehl benutzt habe "bcdedit /set {current} nx AlwaysOn" hab dann mal mein pc neu gestartet aber es ist immernoch alles ausgegraut bei der DEP einstellung, also auf leistung, einstellungen, datenausführungsverhinderung.
ich will es wieder so haben das ich da den oberen punkt anharken kann
bcdedit.exe /set {current} nx OptIn