Насколько я понимаю Ubuntu имеет функцию для установки бита nx для предотвращения нападений разрушения стека.
Какой файл исходного кода реализует это, и во время нормального функционирования, какой процесс/структура данных обрабатывает установку этого бита?
Примечание: Это не вопрос о записи nx разрядная защита в сторонних программах, это - вопрос о том, где я вижу реализацию текущих мер защиты.
Вы могли попытаться запуститься здесь .
Пример, как запустить
, существует строка кода:
#define X86_FEATURE_NX ( 1*32+20) /* Execute Disable */
я уже клонировал мерзавца repo ядра Linux, оно было клонировано, когда последняя фиксация в master
ответвление была 14186fea0cb06bc43181ce239efe0df6f1af260a
. Таким образом, что-то может быть изменено прямо сейчас.
Попытка найти все файлы, которые используют это X86_FEATURE_NX
в мерзавце ядра Linux repo:
$ for i in *; do find "$i" -type f | xargs grep -l "X86_FEATURE_NX"; done
arch/x86/kvm/vmx.c
arch/x86/kvm/svm.c
arch/x86/kernel/head_32.S
arch/x86/include/asm/cpufeature.h