Perubahan dibuat kepada OpenBSD untuk melindungi memori proses selanjutnya

Theo de Raadt menambah satu siri tampalan pada pangkalan kod OpenBSD untuk terus melindungi memori proses ruang pengguna. Pembangun ditawarkan panggilan sistem baharu dan fungsi perpustakaan boleh ubah yang berkaitan dengan nama yang sama, yang membenarkan penetapan hak akses apabila mencerminkan ke dalam memori (pemetaan memori). Selepas menetapkan, hak yang ditetapkan untuk kawasan ingatan, sebagai contoh, larangan menulis dan melaksanakan, tidak boleh diubah kemudian melalui panggilan berikutnya ke fungsi mmap (), mprotect () dan munmap (), yang, apabila cuba menukar, akan menjana ralat EPERM.

Bahagian BSS Boleh Berubah baharu (.openbsd.mutable, Simbol Permulaan Blok Boleh Berubah) telah dicadangkan untuk mengawal keupayaan menukar kebenaran memori bercermin untuk fail objek, dan bendera baharu PF_MUTABLE dan UVM_ET_IMMUTABLE telah ditambahkan. Menambah sokongan kepada pemaut untuk mentakrifkan bahagian "openbsd.mutable" dan meletakkannya di kawasan berasingan dalam BSS yang dijajarkan dengan sempadan halaman memori. Melalui panggilan ke fungsi boleh ubah, adalah mungkin untuk menandakan semua kawasan yang dicerminkan sebagai tidak boleh diubah, kecuali bahagian yang ditandakan sebagai "openbsd.mutable". Ciri baharu ini akan dilancarkan kepada pengguna dalam keluaran OpenBSD 7.3.

Sumber: opennet.ru

Tambah komen