Jarayon xotirasini qo'shimcha himoya qilish uchun OpenBSD-ga o'zgartirishlar kiritildi

Teo de Raadt foydalanuvchining makon jarayoni xotirasini yanada himoya qilish uchun OpenBSD kod bazasiga bir qator yamoqlarni qo'shdi. Ishlab chiquvchilarga yangi tizim qo'ng'irog'i va bir xil nomdagi o'zgartiriladigan kutubxona funksiyasi taklif etiladi, bu esa xotirada aks ettirishda kirish huquqlarini aniqlash imkonini beradi (xotira xaritalari). Aniqlangandan so'ng, xotira maydoni uchun o'rnatilgan huquqlarni, masalan, yozish va bajarishni taqiqlash, keyinchalik mmap (), mprotect () va munmap () funktsiyalariga keyingi qo'ng'iroqlar orqali o'zgartirilishi mumkin emas, ular o'zgartirishga harakat qilganda, EPERM xatosini keltirib chiqaradi.

Ob'ekt fayllari uchun aks ettirilgan xotira ruxsatlarini o'zgartirish imkoniyatini boshqarish uchun yangi O'zgaruvchan BSS bo'limi (.openbsd.mutable, O'zgaruvchan blokni boshlash belgisi) taklif qilindi va yangi PF_MUTABLE va UVM_ET_IMMUTABLE bayroqlari qo'shildi. "openbsd.mutable" bo'limlarini aniqlash va ularni xotira sahifasi chegarasiga to'g'rilangan BSS-ning alohida maydoniga joylashtirish uchun bog'lovchiga qo'shimcha yordam qo'shildi. O'zgartirish funksiyasiga qo'ng'iroq qilish orqali "openbsd.mutable" deb belgilangan bo'limlar bundan mustasno, barcha aks ettirilgan maydonlarni o'zgarmas deb belgilash mumkin. Yangi funksiya OpenBSD 7.3 versiyasida foydalanuvchilarga taqdim etiladi.

Manba: opennet.ru

a Izoh qo'shish