OpenBSD yatenga zosintha kuti zitetezerenso kukumbukira

Theo de Raadt wawonjezera zigamba zingapo ku OpenBSD codebase kuti atetezerenso kukumbukira kwadongosolo mu malo ogwiritsa ntchito. Madivelopa amapatsidwa kuyimba kwadongosolo kwatsopano ndi ntchito ya library yolumikizidwa ya dzina lomwelo, losasinthika, lomwe limakupatsani mwayi wokonza mwayi wofikira mukamayang'ana kukumbukira (mapu okumbukira). Pambuyo pochita, maufulu omwe amaikidwa pa malo okumbukira, mwachitsanzo, kuletsa kulemba ndi kuphedwa, sikungasinthidwe pambuyo pake kupyolera mu kuyitana kwa mmap (), mprotect () ndi munmap () ntchito, zomwe zidzapangitse cholakwika cha EPERM poyesa. kusintha.

Kuti muwongolere kuthekera kosintha maufulu a kukumbukira kwa mafayilo azinthu, gawo latsopano la Mutable BSS (.openbsd.mutable, Mutable Block Starting Symbol) laperekedwa, ndipo mbendera zatsopano PF_MUTABLE ndi UVM_ET_IMMUTABLE zawonjezedwa. Thandizo lowonjezera kwa ogwirizanitsa kuti afotokoze zigawo za "openbsd.mutable" ndikuziyika kumalo osiyana mu BSS, zogwirizana ndi malire a tsamba la kukumbukira. Potchula ntchito yosasinthika, ndizotheka kuyika madera onse owonetseredwa ngati osasinthika, kupatulapo zigawo zolembedwa "openbsd.mutable". Zatsopanozi zidzaperekedwa kwa ogwiritsa ntchito kumasulidwa kwa OpenBSD 7.3.

Source: opennet.ru

Kuwonjezera ndemanga