OpenBSD ha adoptat canvis per protegir encara més la memòria del procés

Theo de Raadt ha afegit una sèrie de pedaços a la base de codi OpenBSD per protegir encara més la memòria del procés a l'espai de l'usuari. Als desenvolupadors se'ls ofereix una nova trucada al sistema i la funció de biblioteca associada del mateix nom, immutable, que us permet corregir els drets d'accés quan es reflecteix a la memòria (mapatges de memòria). Després de la confirmació, els drets establerts per a una àrea de memòria, per exemple, prohibició d'escriptura i execució, no es poden canviar posteriorment mitjançant crides posteriors a les funcions mmap(), mprotect() i munmap(), que generaran un error EPERM en intentar-ho. canviar.

Per controlar la capacitat de canviar els drets de la memòria reflectida per als fitxers d'objectes, s'ha proposat una nova secció de BSS mutable (.openbsd.mutable, Símbol d'inici de blocs mutables) i s'han afegit noves marques PF_MUTABLE i UVM_ET_IMMUTABLE. S'ha afegit suport a l'enllaç per definir seccions "openbsd.mutable" i col·locar-les en una àrea separada al BSS, alineada amb el límit d'una pàgina de memòria. En cridar la funció immutable, és possible marcar totes les àrees reflectides com a immutables, amb l'excepció de les seccions marcades "openbsd.mutable". La nova funció s'implementarà als usuaris a la versió 7.3 d'OpenBSD.

Font: opennet.ru

Afegeix comentari