Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 303

DEP

Что такое DEP?

DEPПредотвращение выполнения данных (DEP, NX или W^X) помечает страницы памяти как неисполняемые, чтобы атакующий не мог запустить шеллкод, внедрённый в стек или кучу.


DEP, также называемая NX (No-eXecute) или W^X (write XOR execute), гарантирует, что страница памяти может быть либо записываемой, либо исполняемой, но не обеими одновременно. Бит NX в процессоре блокирует выборку инструкций со страниц данных — стека и кучи — и обесценивает классические атаки с инъекцией шеллкода. AMD ввела аппаратный бит NX в 2003 году, Intel вскоре последовала; Windows XP SP2 получила программный DEP, а Linux — через PaX/grsecurity до интеграции в основное ядро. Поскольку DEP исключает прямое выполнение из данных, атакующие перешли к повторному использованию кода (return-to-libc, ROP), поэтому DEP сочетают с ASLR, CFI и теневыми стеками.

Примеры

  1. 01

    Стек, помеченный как NX, приводит к сбою вместо запуска шеллкода.

  2. 02

    mmap в укреплённом Linux отклоняет PROT_WRITE | PROT_EXEC.

Частые вопросы

Что такое DEP?

Предотвращение выполнения данных (DEP, NX или W^X) помечает страницы памяти как неисполняемые, чтобы атакующий не мог запустить шеллкод, внедрённый в стек или кучу. Относится к категории Безопасность приложений в кибербезопасности.

Что означает DEP?

Предотвращение выполнения данных (DEP, NX или W^X) помечает страницы памяти как неисполняемые, чтобы атакующий не мог запустить шеллкод, внедрённый в стек или кучу.

Как работает DEP?

DEP, также называемая NX (No-eXecute) или W^X (write XOR execute), гарантирует, что страница памяти может быть либо записываемой, либо исполняемой, но не обеими одновременно. Бит NX в процессоре блокирует выборку инструкций со страниц данных — стека и кучи — и обесценивает классические атаки с инъекцией шеллкода. AMD ввела аппаратный бит NX в 2003 году, Intel вскоре последовала; Windows XP SP2 получила программный DEP, а Linux — через PaX/grsecurity до интеграции в основное ядро. Поскольку DEP исключает прямое выполнение из данных, атакующие перешли к повторному использованию кода (return-to-libc, ROP), поэтому DEP сочетают с ASLR, CFI и теневыми стеками.

Как защититься от DEP?

Защита от DEP обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия DEP?

Распространённые альтернативные названия: NX, Неисполняемая память, W^X.

Связанные термины

См. также