Theo de Raadt dodao je seriju ispravki u kodnu bazu OpenBSD za dodatnu zaštitu memorije procesa u korisničkom prostoru. Razvijačima je ponuđen novi sistemski poziv i povezana funkcija biblioteke pod istim nazivom mimmutable, koja omogućuje fiksiranje prava pristupa prilikom odražavanja u memoriju (memory mappings). Nakon fiksacije, postavljena prava za područje memorije, na primjer, zabrana pisanja i izvršenja, ne mogu se kasnije promijeniti putem sljedećih poziva funkcijama mmap(), mprotect() i munmap(), koji će pri pokušaju promjene izdati grešku EPERM.
Za upravljanje mogućnošću promjene prava odražene memorije za objekte datoteka predložena je nova sekcija Mutable BSS (.openbsd.mutable, Mutable Block Starting Symbol), kao i dodani novi zastavci PF_MUTABLE i UVM_ET_IMMUTABLE. U linker je dodana podrška za definiranje sekcija «openbsd.mutable» i smještaj u zasebno područje u BSS, poravnato prema granici stranice memorije. Pozivom funkcije mimmutable omogućuje se označavanje svih odraženih područja kao nepromjenjivih (immutable), osim sekcija označenih kao «openbsd.mutable». Nova mogućnost bit će dostupna korisnicima u izdanju OpenBSD 7.3.
Izvor: opennet.ru
