Theo de Raadt lisas OpenBSD koodibaasi seeria patšhe, et täiustada protsesside mälukaitset kasutajaruumi tasemel. Arendajatele on pakutud uut süsteemikõnet ja sellega seotud sama nime kandev teegifunktsioon mimmutable, mis võimaldab lukustada ligipääsu õigusi mälu peegeldamisel. Pärast lukustamist ei ole võimalik määratud mäluala õigusi, näiteks kirjutamise ja täitmise keeld, edasiste mmap(), mprotect() ja munmap() funktsioonide kõnede kaudu muuta, mis katse korral annab vea EPERM.
Objektifailide peegeldatud mälu õiguste muutmise haldamiseks on ette nähtud uus jaotis Mutable BSS (.openbsd.mutable, Mutable Block Starting Symbol), samuti on lisatud uued lipud PF_MUTABLE ja UVM_ET_IMMUTABLE. Linkija toetab nüüd jaotiste «openbsd.mutable» määratlemist ja nende paigutamist BSS-is eraldi alale, mis on joondatud mälulehe piiriga. Funktsiooni mimmutable kutsumise kaudu on võimalik märkida kõik peegeldatud alad muutumatuteks (immutable), välja arvatud jaotised, mis on märgitud kui «openbsd.mutable». Uus funktsioon jõuab kasutajateni OpenBSD 7.3 versioonis.
Allikas: opennet.ru
