<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=NX-Bit</id>
	<title>NX-Bit - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=NX-Bit"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=NX-Bit&amp;action=history"/>
	<updated>2026-05-25T23:02:50Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=NX-Bit&amp;diff=266651&amp;oldid=prev</id>
		<title>imported&gt;Dexxor: Wikipedia_Diskussion:Redaktion_Informatik#Datenbereich</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=NX-Bit&amp;diff=266651&amp;oldid=prev"/>
		<updated>2025-02-06T16:54:06Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Wikipedia_Diskussion:Redaktion_Informatik&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Wikipedia Diskussion:Redaktion Informatik (Seite nicht vorhanden)&quot;&gt;Wikipedia_Diskussion:Redaktion_Informatik#Datenbereich&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Das &amp;#039;&amp;#039;&amp;#039;NX-Bit&amp;#039;&amp;#039;&amp;#039; ({{lang|en|&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;o&amp;amp;nbsp;e&amp;#039;&amp;#039;&amp;#039;X&amp;#039;&amp;#039;&amp;#039;ecute}}, AMD) bzw. &amp;#039;&amp;#039;&amp;#039;XD-Bit&amp;#039;&amp;#039;&amp;#039; ({{lang|en|E&amp;#039;&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;#039;ecute &amp;#039;&amp;#039;&amp;#039;D&amp;#039;&amp;#039;&amp;#039;isable}}, Intel) ist eine Technik von [[Prozessor]]en der [[x86-Prozessor|x86-Familie]] zur Verbesserung der Sicherheit eines Computers. Sie soll verhindern, dass beliebige Daten als Programmcode ausgeführt werden und auf diese Weise [[Schadcode]] starten, wie z.&amp;amp;nbsp;B. [[Computervirus|Viren]], [[Backdoor]]s u.&amp;amp;nbsp;ä. Das NX-Bit wurde von [[AMD]] 2004 bei der [[x86-Architektur]] eingeführt und auch von [[Intel]] und anderen [[x86-Prozessor#Hersteller|Herstellern von x86-Prozessoren]] übernommen. Bei [[Microsoft Windows|Windows-Betriebssystemen]] (ab Windows&amp;amp;nbsp;XP SP2) wird die Technik auch als &amp;#039;&amp;#039;Data Execution Prevention&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;[https://docs.microsoft.com/en-us/windows/win32/memory/data-execution-prevention msdn.microsoft.com]&amp;lt;/ref&amp;gt; (kurz &amp;#039;&amp;#039;DEP&amp;#039;&amp;#039;; {{deS|&amp;#039;&amp;#039;Datenausführungsverhinderung&amp;#039;&amp;#039;}}) bezeichnet.&lt;br /&gt;
&lt;br /&gt;
Ähnliche Techniken gibt es auf anderen [[Prozessorarchitektur]]en schon länger, etwa beim [[PowerPC]] von [[IBM]] und [[Motorola]]&amp;lt;!-- (sowie [[Apple]]: AIM-Allianz)--&amp;gt;, der [[SPARC-Architektur]] von [[Sun Microsystems|Sun]] und den [[Alpha-Prozessor]]en von [[Digital Equipment Corporation|DEC]].&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Seit dem [[Intel 80286|80286]]-Prozessor von Intel besteht im sogenannten {{lang|en|[[Protected Mode]]}} die Möglichkeit, einzelne [[Speichersegment]]e als &amp;#039;&amp;#039;ausführbar&amp;#039;&amp;#039; (Code-Segmente) oder &amp;#039;&amp;#039;nicht ausführbar&amp;#039;&amp;#039; (Daten-Segmente) zu kennzeichnen. Wird versucht, Code an einer Adresse in einem als &amp;#039;&amp;#039;nicht ausführbar&amp;#039;&amp;#039; markierten Speichersegment auszuführen, löst die CPU einen Hardware-Interrupt aus, welcher vom Betriebssystem abgefangen wird. Das betreffende Programm wird daraufhin abgebrochen.&lt;br /&gt;
&lt;br /&gt;
Seit den 1990er Jahren nutzen moderne Betriebssysteme zwar ebenfalls den {{lang|en|Protected Mode}}, jedoch verwenden sie ein sogenanntes „flaches [[Speichermodell (Speicherverwaltung)|Speichermodell]]“ ([[Adressraum#Linearer Adressraum|linearer Adressraum]]), in dem sämtliche Segmente den gleichen linearen Speicherbereich überdecken. Der segmentbasierte [[Speicherschutz]] ist damit ausgehebelt, eine Trennung zwischen Code- und [[Datensegment]]en ist nicht mehr vorhanden.&lt;br /&gt;
&lt;br /&gt;
Die Technik wurde daher vom Chiphersteller [[AMD]] 2004 mit dem Prozessor [[AMD Athlon 64|Athlon&amp;amp;nbsp;64]] unter dem Namen &amp;#039;&amp;#039;NX-Bit&amp;#039;&amp;#039; für den x86-Markt eingeführt&amp;lt;ref name=&amp;quot;inforworld_nx_transmeta_2004&amp;quot;&amp;gt;{{Internetquelle |autor=Tom Krazit |url=https://www.infoworld.com/article/2667400/transmeta-targets-pentium-m-users-with-nx-security-bit.html |titel=Transmeta targets Pentium&amp;amp;nbsp;M users with NX security bit |titelerg=No Execute feature for security gets backing |werk=[[InfoWorld]] |datum=2004-05-17 |sprache=en-US |abruf=2022-09-18 |abruf-verborgen= |zitat=Earlier this month, AMD released two Mobile Athlon 64 processors for thin and light notebooks that support NX, or what AMD calls Enhanced Virus Protection.}}&amp;lt;/ref&amp;gt; und als &amp;#039;&amp;#039;{{lang|en-US|Enhanced Virus Protection}}&amp;#039;&amp;#039; (&amp;#039;&amp;#039;EVP&amp;#039;&amp;#039;) vermarktet. [[Intel]] setzte eine vergleichbare Technik bereits bei der gemeinsam mit [[HP Inc.|Hewlett-Packard]] entwickelten [[Itanium-Architektur]] ein und zog 2005 mit den [[Intel Pentium 4|Pentium-4]]-&amp;lt;ref&amp;gt;{{Heise online |ID=101348 |Titel=Intel lässt Details zu kommenden Pentium-4-Versionen entschlüpfen |Autor=Christof Windeck |Datum=2004-06-04 |Abruf=2022-09-18}}&amp;lt;/ref&amp;gt; und [[Intel Pentium M|Pentium-M]]-Modellen, sowie bei der 2006 eingeführten [[Intel-Core-Mikroarchitektur|Core-Mikroarchitektur]] auch auf der x86-Architektur nach, allerdings unter dem Namen &amp;#039;&amp;#039;XD-Bit&amp;#039;&amp;#039; ({{lang|en-US|Execute Disable}}). Auch [[Transmeta]] und [[VIA Technologies|VIA]]/[[Centaur Technology|Centaur]] übernahmen die Technik in deren x86-Prozessoren.&amp;lt;ref name=&amp;quot;inforworld_nx_transmeta_2004&amp;quot; /&amp;gt;&amp;lt;ref&amp;gt;{{Heise online |ID=98735 |Titel=Transmetas Efficeon-Prozessoren bald mit NX-Speicherschutz |Autor=Christof Windeck |Datum=2004-05-18 |Abruf=2022-09-18}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Heise online |ID=98799 |Titel=VIA will auch bald C3-Prozessoren mit NX-Speicherschutz liefern |Autor=Christof Windeck |Datum=2004-05-19 |Abruf=2022-09-18}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;heiseonline_107139&amp;quot;&amp;gt;{{Heise online |ID=107139 |Titel=Fall Processor Forum: 64-Bit-Prozessor von VIA |Autor=Andreas Stiller |Datum=2004-10-06 |Abruf=2022-09-18}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|+ 64-Bit-Eintrag im Seitenverzeichnis (Page directory entry)&lt;br /&gt;
|- style=&amp;quot;border-top:2px solid #777777&amp;quot;&lt;br /&gt;
!Bits:&lt;br /&gt;
! 63&lt;br /&gt;
!colspan=&amp;quot;11&amp;quot;| 62 … 52&lt;br /&gt;
!colspan=&amp;quot;20&amp;quot;| 51 … 32&lt;br /&gt;
|- style=&amp;quot;border-bottom:2px solid #777777;&amp;quot;&lt;br /&gt;
!Inhalt:&lt;br /&gt;
| NX&lt;br /&gt;
|colspan=11 style=&amp;quot;background-color:#ccc;&amp;quot;| &amp;#039;&amp;#039;reserved&amp;#039;&amp;#039;&lt;br /&gt;
|colspan=20| Bit 51 … 32 der Basisadresse&lt;br /&gt;
|-&lt;br /&gt;
!Bits:&lt;br /&gt;
!colspan=&amp;quot;20&amp;quot;| 31 … 12&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;| 11 … 9&lt;br /&gt;
!8&lt;br /&gt;
!7&lt;br /&gt;
!6&lt;br /&gt;
!5&lt;br /&gt;
!4&lt;br /&gt;
!3&lt;br /&gt;
!2&lt;br /&gt;
!1&lt;br /&gt;
!0&lt;br /&gt;
|- style=&amp;quot;border-bottom:2px solid #777777;&amp;quot;&lt;br /&gt;
!Inhalt:&lt;br /&gt;
|colspan=20| Bit 31 … 12 der Basisadresse&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| AVL&lt;br /&gt;
|&amp;#039;&amp;#039;ig&amp;#039;&amp;#039;&lt;br /&gt;
| 0&lt;br /&gt;
|&amp;#039;&amp;#039;ig&amp;#039;&amp;#039;&lt;br /&gt;
| A&lt;br /&gt;
|PCD&lt;br /&gt;
|PWT&lt;br /&gt;
|U/S&lt;br /&gt;
|R/W&lt;br /&gt;
|P&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Heutige Betriebssysteme verlassen sich beim Speicherschutz ausschließlich auf [[Paging|seitenbasiertes]] Speichermanagement. Dieses gestattet bei der 32-Bit-x86-Architektur [[IA-32]] zwar die Unterscheidung zwischen Seiten, die „nur lesbar“ und welchen, die „les- und schreibbar“ sind (siehe Bit&amp;amp;nbsp;1 („R/W“) im Seitentabelleneintrag), jedoch ist dort keine Unterscheidung zwischen (Daten) „Lesen“ und (Code) „Ausführen“ vorgesehen. AMD hat für das NX-Bit das Bit 63 in den 64-Bit-Seitentabellen und -verzeichnissen verwendet. 64-Bit-Seitentabellen und -verzeichnisse werden nur im 64-Bit-Modus und im 32-Bit-Modus mit aktivierter {{lang|en|[[Physical-Address Extension]]}} (PAE) verwendet.&lt;br /&gt;
&lt;br /&gt;
Das NX-Bit wird vom Betriebssystem, sofern es dieses unterstützt, für den [[Aufrufstapel|Stack]] und andere [[Datensegment]]e im Arbeitsspeicher gesetzt, so dass diese nicht mehr ausführbar sind. Versucht ein Programm nun, aufgrund eines Bugs oder einer Infektion mit Schadcode diese so markierten Speicherseiten auszuführen, fängt die CPU dies ab und meldet dies über einen Hardware-Interrupt an das Betriebssystem, welches daraufhin das betroffene Programm beendet.&lt;br /&gt;
&lt;br /&gt;
Durch dieses Vorgehen wird das [[Von-Neumann-Architektur|Von-Neumann-Prinzip]], Daten und Programm in einem gemeinsamen Speicher abzulegen, teilweise verletzt. Allerdings wird nur der Ausführung von Code in Datensegmenten (z.&amp;amp;nbsp;B. in einem Stack oder [[Dynamischer Speicher|Heap]]) vorgebeugt. Der Pufferüberlauf an sich wird nicht unterbunden. Wenn dabei ein [[Sprunganweisung|Sprung]] in eine Codepage ausgelöst wird, ist die No-Execute-Technik wirkungslos. Des Weiteren lässt sich trotz dieser Technik beliebiger Code beispielsweise durch ein „[[return into libc]]“ ausführen.&lt;br /&gt;
&lt;br /&gt;
== Betriebssysteme ==&lt;br /&gt;
Auf 64-Bit-x86-Systemen ([[x64]]: auch oft „x86_64“ oder „amd64“ bezeichnet) ist das NX-Bit in jedem Fall nutzbar. Auf 32-Bit-x86-Betriebssystemen ([[IA-32]], meist „x86“ oder „i386“) ist technisch das NX-Bit nur nutzbar, wenn auch [[Physical-Address Extension|PAE]] aktiviert ist.&amp;lt;ref&amp;gt;https://devblogs.microsoft.com/oldnewthing/20210510-00/?p=105200&amp;lt;/ref&amp;gt; Bei älteren Betriebssystemen muss PAE noch manuell vom Benutzer aktiviert werden, etwa unter [[Microsoft Windows 2000|Windows 2000]]. Auch der [[Linux (Kernel)|Linux-Kernel]] kann auf IA-32 sowohl mit als auch ohne PAE konfiguriert werden; die Voreinstellung wurde jedoch Mitte der 2000er Jahre bald aktiviertes PAE bei den 32-Bit-Varianten von Windows, Mac OS&amp;amp;nbsp;X und Linux, und somit auch die Unterstützung für das NX- bzw. XD-Bit. [[OS/2]] bzw. dessen Nachfolger [[ArcaOS]] (vormals eComStation) hingegen nutzt PAE aus Gründen der Kompatibilität mit Treibern und Anwendungssoftware nicht. (Mit ArcaOS 5.1 von 2023 kam zwar PAE-Unterstützung hinzu, damit ist jedoch nur eine [[RAM-Disk]] nutzbar.)&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
Das Betriebssystem [[Microsoft Windows|Windows]] von [[Microsoft]] unterstützt DEP ab [[Microsoft Windows XP|Windows&amp;amp;nbsp;XP]] SP&amp;amp;nbsp;2, sofern der jeweilige Prozessor die Möglichkeit bietet. Ab [[Microsoft Windows Vista|Windows Vista]] sind die Einstellungen dem Benutzer sichtbar (Systemeigenschaften&amp;amp;nbsp;→ Erweitert&amp;amp;nbsp;→ Leistung&amp;amp;nbsp;→ Einstellungen&amp;amp;nbsp;→ Datenausführungsverhinderung). [[Microsoft Windows 8|Windows&amp;amp;nbsp;8]] und neuere Windows-Versionen können auf Prozessoren ohne NX-Bit nicht gestartet werden.&amp;lt;ref&amp;gt;https://support.microsoft.com/de-de/help/12660/windows-8-system-requirements&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
Für [[Linux]] wurde vom bei [[Red Hat]] angestellten Entwickler Ingo Molnar ein [[Patch (Software)|Patch]] zur Unterstützung des NX-Bit für den [[Linux (Kernel)|Linux-Kernel]] der 2.6er-Reihe entwickelt, der für Kernel 2.6.6 in [[Red Hat Linux]] zur Verfügung gestellt wurde.&amp;lt;ref name=&amp;quot;heiseonline_101365&amp;quot;&amp;gt;{{Heise online |ID=101365 |Titel=No eXecution für Linux |Autor=Jürgen Schmidt |Datum=2004-06-04 |Abruf=2022-09-18}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Internetquelle |autor=corbet |url=https://lwn.net/Articles/87814/ |titel=x86 NX support |werk=[[LWN.net]] |datum=2004-06-02 |sprache=en |abruf=2024-04-06}}&amp;lt;/ref&amp;gt; Im offiziellen Linux-Kernel ist der Patch ab Version 2.6.8 enthalten.&lt;br /&gt;
&lt;br /&gt;
=== macOS ===&lt;br /&gt;
Das Betriebssystem für Computer von [[Apple]], [[macOS]] (früher „Mac OS&amp;amp;nbsp;X“ und „OS&amp;amp;nbsp;X“), unterstützt das NX-Bit seit der ersten Intel-Version (für [[Intel-Mac]]s) 10.4.4 „[[Mac OS X Tiger|Tiger]]“.&amp;lt;ref&amp;gt;{{Literatur |Autor=Muhammad Arif Butt, Zafar Iqbal Khan, Muhammad Idrees, Zarafshan Ajmal |Titel=An In-Depth Survey of Bypassing Buffer Overflow Mitigation Techniques; Applied Sciences |Hrsg=MDPI |Ort=Basel, Schweiz |Datum=2022-07-01 |Sprache=en |Seiten=11 |DOI=10.3390/app12136702 |Online=https://www.mdpi.com/2076-3417/12/13/6702 |Abruf=2024-04-06 |Zitat=The mac OS&amp;amp;nbsp;X 10.4.4 onwards supports NX bit on all Apple-supported processors.}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CPUs mit NX-Bit ==&lt;br /&gt;
Prozessoren mit dem NX-Bit-Feature lassen sich per Software an einem gesetzten 11. Bit im &amp;#039;&amp;#039;Extended Feature Enable Register&amp;#039;&amp;#039; erkennen. Dieses „model specific register“ lässt sich nur von privilegierter Software (Systemsoftware), also beispielsweise vom Betriebssystemkern, auslesen.&lt;br /&gt;
&lt;br /&gt;
=== AMD ===&lt;br /&gt;
* [[AMD Athlon 64]] und Nachfolger&lt;br /&gt;
* [[AMD Opteron]]&lt;br /&gt;
* [[AMD Phenom]] und Nachfolger&lt;br /&gt;
* [[AMD Sempron]] (ab Paris)&lt;br /&gt;
* [[AMD Turion 64]] und Nachfolger&lt;br /&gt;
* [[AMD Ryzen]] und Nachfolger&lt;br /&gt;
=== Intel ===&lt;br /&gt;
* [[Intel Atom]]&lt;br /&gt;
* Intel [[Celeron]] (ab Conroe-L-Kern)&lt;br /&gt;
* Intel [[Celeron D]]&lt;br /&gt;
* Intel [[Celeron M]] (ab Dothan-Kern)&lt;br /&gt;
* [[Intel Core]] Solo, Duo und Nachfolger&lt;br /&gt;
* Intel [[Pentium 4]] (ab Prescott-F/J-Typ)&lt;br /&gt;
* Intel [[Pentium D]]&lt;br /&gt;
* Intel [[Pentium Dual-Core]]&lt;br /&gt;
* Intel [[Pentium Extreme Edition]]&lt;br /&gt;
* Intel [[Pentium M]] (ab Dothan, FSB533 alle Modelle, FSB400 nur Modelle mit CPU-ID 06D8h)&lt;br /&gt;
* Intel [[Xeon]] (ab Pentium D Kern)&lt;br /&gt;
&lt;br /&gt;
=== Übrige ===&lt;br /&gt;
* [[Transmeta]] [[Efficeon]]&lt;br /&gt;
* [[VIA C7]]&lt;br /&gt;
* [[VIA Nano]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.linux-magazin.de/ausgaben/2008/03/kern-technik/ &amp;#039;&amp;#039;Implementation&amp;#039;&amp;#039;] &amp;#039;&amp;#039;von [[Address Space Layout Randomization|ASLR]] und NX/XD-Bit im Linux 2.6-Kernel&amp;#039;&amp;#039;. [[Linux-Magazin]]&lt;br /&gt;
* [https://www.heise.de/newsticker/meldung/Verwundbar-trotz-No-Execute-135471.html &amp;#039;&amp;#039;Verwundbar trotz No Execute&amp;#039;&amp;#039;.] [[Heise online]]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste x86-Erweiterungen}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Rechnerarchitektur]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Dexxor</name></author>
	</entry>
</feed>