Outils pour utilisateurs

Outils du site


trad:why-openbsd.rocks:fact:stack-register-checking

stack-register checking


Vérification du registre de la pile

Un objet mémoire devrait avoir le moins d'autorisations possibles : typiquement read, write, et execute (lecture, écriture et exécution). OpenBSD introduit un nouveau drapeau de permission appelé stack.

Si vous voulez utiliser une mémoire comme pile, vous devez utiliser mmap avec un drapeau bit.

Quand un appel système arrive, nous vérifions que le registre du pointeur de pile pointe vers une telle page. Si cela n'est pas, le programme est arrêté. En conséquence, l'ABI est plus stricte. Vous ne pouvez plus orienter votre registre de pile vers une mémoire autre que la pile, sinon votre programme sera arrêté.

Des détails :



Contribut(rice|eur)s :

pengouinpdt
trad/why-openbsd.rocks/fact/stack-register-checking.txt · Dernière modification: 2020/06/04 16:24 de pengouinpdt