mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
17 lines
1.1 KiB
Markdown
17 lines
1.1 KiB
Markdown
# No-exec / NX
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
## Informazioni di base
|
|
|
|
Il **No-Execute (NX)** bit, noto anche come **Execute Disable (XD)** nella terminologia Intel, è una funzione di sicurezza basata sull'hardware progettata per **mitigare** gli effetti degli attacchi di **buffer overflow**. Quando implementato e abilitato, distingue tra le regioni di memoria destinate a **codice eseguibile** e quelle destinate a **dati**, come lo **stack** e l'**heap**. L'idea principale è quella di impedire a un attaccante di eseguire codice malevolo attraverso vulnerabilità di buffer overflow, mettendo ad esempio il codice malevolo nello stack e dirigendo il flusso di esecuzione verso di esso.
|
|
|
|
## Bypass
|
|
|
|
- È possibile utilizzare tecniche come [**ROP**](../rop-return-oriented-programing/index.html) **per bypassare** questa protezione eseguendo porzioni di codice eseguibile già presenti nel binario.
|
|
- [**Ret2libc**](../rop-return-oriented-programing/ret2lib/index.html)
|
|
- [**Ret2syscall**](../rop-return-oriented-programing/rop-syscall-execv/index.html)
|
|
- **Ret2...**
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|