No-exec / NX
Grundlegende Informationen
Das No-Execute (NX)-Bit, auch bekannt als Execute Disable (XD) in der Intel-Terminologie, ist ein hardwarebasiertes Sicherheitsmerkmal, das entwickelt wurde, um die Auswirkungen von Buffer Overflow-Angriffen zu mindern. Wenn implementiert und aktiviert, unterscheidet es zwischen Speicherbereichen, die für ausführbaren Code vorgesehen sind, und solchen, die für Daten wie den Stack und den Heap vorgesehen sind. Die Kernidee besteht darin, zu verhindern, dass ein Angreifer bösartigen Code durch Pufferüberlauf-Schwachstellen ausführt, indem er den bösartigen Code beispielsweise im Stack platziert und den Ausführungsfluss darauf lenkt.
Umgehungen
Es ist möglich, Techniken wie ROP zu umgehen, indem man Chunks ausführbaren Codes ausführt, die bereits im Binär vorhanden sind.
Ret2...
Last updated