Theo de Raadt új javításokat adott a OpenBSD kódjához, amelyek a felhasználói folyamatok memória védelmét célozzák. A fejlesztők egy új rendszerhívást és egy azonos nevű könyvtári funkciót, mimmutable, kaptak, amely lehetővé teszi a hozzáférési jogok rögzítését a memória leképezés (memory mappings) során. A rögzítés után a kijelölt memória területre vonatkozó jogok, például a írás és végrehajtás tilalma, a későbbi mmap(), mprotect() és munmap() hívásokkal nem módosíthatók, és a módosítási kísérletek EPERM hibát adnak vissza.
A leképezett memória jogainak módosításának lehetőségeinek kezelésére egy új szekciót javasoltak, a Mutable BSS (.openbsd.mutable, Mutable Block Starting Symbol), és új PF_MUTABLE és UVM_ET_IMMUTABLE zászlók kerültek bevezetésre. A linker támogatást kapott az «openbsd.mutable» szekciók és azok külön memória BSS szakaszba helyezésének meghatározásához, amely a memória laphatárának megfelelően van igazítva. Az mimmutable függvény hívásával lehetőség van minden leképezett terület immutable (meg nem változtatható) jelölésére, kivéve az «openbsd.mutable» szekciókat. Az új lehetőség az OpenBSD 7.3 kiadásban fog elérhetővé válni a felhasználók számára.
Forrás: opennet.ru
