1 votes

Quel fichier source d'Ubuntu implémente la gestion du bit nx ?

Si j'ai bien compris, Ubuntu dispose d'une fonction permettant de définir le bit nx afin d'éviter les attaques par écrasement de pile.

Quel est le fichier de code source qui implémente cette fonction et, pendant les opérations normales, quel processus/structure de données gère la mise en place de ce bit ?

Note : Il s'agit de pas une question sur l'écriture de la protection nx bit dans des programmes tiers, c'est une question sur l'endroit où je peux voir l'implémentation des protections actuelles.

2voto

c0rp Points 9110

Vous pouvez essayer de démarrer aquí .

Exemple de démarrage

Il y a une ligne de code :

#define X86_FEATURE_NX      ( 1*32+20) /* Execute Disable */

J'ai déjà cloné le repo git du noyau linux, il a été cloné lors du dernier commit en master a été 14186fea0cb06bc43181ce239efe0df6f1af260a . Il est donc possible que quelque chose soit modifié en ce moment.

Essayer de trouver tous les fichiers qui utilisent ceci X86_FEATURE_NX dans le repo git du noyau linux :

$ 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

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X