Das No Execution Features des Athlon 64 im Detail

Nero24

Administrator
Teammitglied
Mitglied seit
01.07.2000
Beiträge
24.066
Renomée
10.446
  • BOINC Pentathlon 2019
  • BOINC Pentathlon 2020
  • BOINC Pentathlon 2018
  • BOINC Pentathlon 2021
Seit der <a href="http://www.planet3dnow.de/artikel/hardware/a64/index.shtml">Vorstellung des Athlon 64</a> im September wurden die Features der neuen 64-Bit AMD-CPU immer und immer wieder durchgekaut. Daß sie über einen integrierten Speicher-Controller, über SSE2, über Cool'n'Quiet oder über drei Betriebsmodi verfügt, ist mittlerweile selbst für Laien kein Geheimnis mehr. Ein Feature der neuen CPU wurde bisher allerdings noch kaum beachtet. Es nennt sich No-Execution (NX). Dieses Feature soll die CPU davon abhalten, Programmcode auszuführen, der nicht als Programm gedacht war (z.B. Viren). <a href="http://www.k-hardware.de/artikel.php?s=&artikel_id=2574" TARGET="b">K-Hardware</A> hat sich damit befasst. Hier ein kurzer Auszug:<ul><i>NX ist ein Sicherheitsfeature, welches an einem fundamentalen Problem von Programmen ansetzt. Ist ein Programm erst einmal geladen, kann man bei einem Blick in die verwendeten Arbeitsspeicherbereiche nicht mehr feststellen, ob es sich bei einem bestimmten Block nun um Programmcode oder zum Programmablauf gehörende Daten handelt. Diese Verwaltung wird einzig und allein dem Programm und dem Betriebssystem überlassen. Genau an dieser Stelle setzen etliche Würmer und Viren an, die derzeit im Internet kursieren und Buffer-Overflows ausnutzen.
</i></ul>Mit NX nun kann sich die CPU gegen die Ausführung solcher Programme wehren, indem zwischen Code und Daten unterschieden wird, und den Start mit einer Fehlermeldung verweigern. Microsoft habe nun einen Weg gefunden, das NX-Feature auch im 32-Bit Modus zu nutzen. So soll das kommende Service Pack 2 von Windows XP NX nutzen können und das System somit besser gegen ungewollte Codeausführung schützen, sofern eine Athlon 64 CPU zum Einsatz kommt. Einen Virenscanner wird das zwar nicht ersetzen, aber ein Schritt in die richtige Richtung ist es allemal, wenn es funktioniert.
 
Erinnert mich ein bischen an die Vorstufe von TCPA... Palladium und Next Generation Security lässt Grüßen...

edit: Kein Wunder das AMD drüber kein Gerede haben möchte....
 
Zuletzt bearbeitet:
Kann man dieses Feature als ersten Schritt hin zu TCPA/Palladium verstehen ???

edit: da war doch jemand schneller ;D
 
Wie genau funktioniert denn dieses Feature? Ich kann mir momentan nur vorstellen, daß Datenbereiche "anständiger" Programme entsprechend markiert sind und somit nicht mehr durch z.B. provozierte Buffer Overflows als Codebereich mißbraucht werden können. Gelingt es aber einem Schädling, sich in einem Code-Segment einzunisten, wird das NX Feature wohl auch nicht greifen, oder?

Wenn ich Recht habe, wird Microsoft ihre Software trotzdem patchen müssen - wenigstens um das NX-Flag einzubauen, oder nicht?

Die Trennung von Code und Daten (und mächtige MMU-Funktionen überhaupt) bietet die Intel-Architektur übrigens schon seit dem 386 an - nur sind die so unperformant, daß kein Hersteller von Mainstream-Betriebssystemen für diese Plattform sie eingesetzt hat (die Wechsel der Segmentkontexte bei Taskwechseln dauern einfach zu lang). Sonst gäbe es diese Sicherheitsprobleme in der Schärfe gar nicht.
 
2 Dumme ein Gedanke :D

Dann gehen Speicherhacks, mit denen man gezielt den Inhalt vom Speicher verändert nicht mehr.... Cheats etc. die im Speicher z.B. die Menge des Geldes in Starcraft verändert?
 
Zuletzt bearbeitet:
TCPA, war auch mein erster Gedanke :-[


Neo
 
Original geschrieben von Fruchtnektar
2 Dumme ein Gedanke :D

Dann gehen Speicherhacks, mit denen man gezielt den Inhalt vom Speicher verändert nicht mehr.... Cheats etc. die im Speicher z.B. die Menge des Geldes in Starcraft verändert?

Wieso nicht? Wenn NX nur gegen ausführen schützt, so kann die entsprechende Speicherseite doch immer noch beschrieben werden.
 
Original geschrieben von PuckPoltergeist
Wieso nicht? Wenn NX nur gegen ausführen schützt, so kann die entsprechende Speicherseite doch immer noch beschrieben werden.

Wenigstens wird dann einem (bis jetzt) noch nicht alles verboten....
 
Original geschrieben von Fruchtnektar
2 Dumme ein Gedanke :D

Dann gehen Speicherhacks, mit denen man gezielt den Inhalt vom Speicher verändert nicht mehr.... Cheats etc. die im Speicher z.B. die Menge des Geldes in Starcraft verändert?
Das NX-Feature verhindert, daß über Datenbereiche hinaus in Code-Bereiche geschrieben wird, die dann im Lauf des regulären Programmablaufs ausgeführt werden.
 
Nettes Feature!
Aber solange das OS immer weitere Scheunentore für Viren öffnet, hilft das auch nicht *buck*

Wäre zwar möglich, dass es als Testballon für die Umsetzung der TCG-Spezifikation gedacht ist, aber eigentlich zeigt es doch, dass ein TPM zur Erhöhung der Sicherheit für den Anwender unnötig ist (abgesehen davon, dass es dafür eher ungeeignet und auch nicht dafür gedacht ist...).
 
Für mich spricht sowas eher dafür, dass es auch ohne TCPA geht. Aber mal schaun, wie lange es dauert, bis auch in dieser Technik wieder ein Bug gefunden wird
 
oh wie neu... vernünftige Trennung von Speicherbereichen gibt es bei vernünftigen CPUs auch inkl. context switches, schon ein "bischen" :] länger...
 
Original geschrieben von Fruchtnektar
Erinnert mich ein bischen an die Vorstufe von TCPA... Palladium und Next Generation Security lässt Grüßen...

edit: Kein Wunder das AMD drüber kein Gerede haben möchte....

Ja! Für mich ist das ganz deutlich auch ein erster Schritt in Richtung TCPA/DRM und dem ganzen Müll. Ich nehme lieber das Virenrisiko in Kauf, als einen Prozessor zu haben, der sich selbst und damit im Endeffekt womöglich auch mich vom Ausführen von Code abhält. EDV-Maschinen sind dazu um zu arbeiten, nicht, um die Arbeit zu verweigern.
 
Hmmm wenn man die Leaks von WinNT und 2000 unter dem Gesichtspunkt der Systemsicherheit betrachtet... und dann das Feature NX...

Is dies wirklich alles Zufall?

MS will ja auch neue Produkte verkaufen...

MFG Bokill
 
Zurück
Oben Unten