17 lines
1.1 KiB
Markdown

# No-exec / NX
{{#include ../../banners/hacktricks-training.md}}
## Podstawowe informacje
Bit **No-Execute (NX)**, znany również jako **Execute Disable (XD)** w terminologii Intela, to funkcja zabezpieczeń oparta na sprzęcie, zaprojektowana w celu **łagodzenia** skutków ataków **buffer overflow**. Gdy jest wdrożona i włączona, rozróżnia obszary pamięci przeznaczone na **kod wykonywalny** i te przeznaczone na **dane**, takie jak **stos** i **sterta**. Główna idea polega na zapobieganiu wykonaniu złośliwego kodu przez atakującego poprzez wykorzystanie luk w buffer overflow, umieszczając złośliwy kod na stosie i kierując do niego przepływ wykonania.
## Obejścia
- Możliwe jest użycie technik takich jak [**ROP**](../rop-return-oriented-programing/index.html) **w celu obejścia** tej ochrony poprzez wykonywanie fragmentów kodu wykonywalnego już obecnego w binarnym.
- [**Ret2libc**](../rop-return-oriented-programing/ret2lib/index.html)
- [**Ret2syscall**](../rop-return-oriented-programing/rop-syscall-execv/index.html)
- **Ret2...**
{{#include ../../banners/hacktricks-training.md}}