Google mengusulkan panggilan sistem penyegelan memori mseal() baru untuk kernel Linux. Google bermaksud agar panggilan sistem independen arsitektur ini pertama kali digunakan oleh browser web Google Chrome di Chrome OS, sementara eksperimen sedang dilakukan untuk digunakan oleh Glibc di tautan dinamis untuk menyegel semua segmen yang tidak dapat ditulis saat permulaan.
Memanfaatkan mseal() akan mencegah panggilan sistem mengubah metadata alamat virtual. Awalnya didukung adalah penyegelan terhadap panggilan mprotect/pkey_mprotect, munmap, mmap, dan mremap. Membuat metadata area memori virtual tidak dapat diubah sedang dicari untuk perlindungan yang lebih baik dalam Google Chrome dan mesin JavaScript V8. Pekerjaan yang dilakukan oleh Glibc untuk menambahkan penyegelan ke dalam tautan dinamis untuk menyegel semua segmen yang tidak dapat ditulis pada waktu permulaan juga akan menguntungkan semua aplikasi secara otomatis. Mereka yang tertarik dapat melihat informasi latar belakang lebih lanjut dalam seri patch kernel ini.
Tetapi hal ini tidak akan langsung diterima dan kemungkinan akan memerlukan beberapa revisi sebelum berkembang menjadi bentuk yang sesuai untuk upstreaming... Linus Torvalds sendiri telah menyatakan beberapa keberatan terhadap model yang diusulkan:
Jadi saya tidak keberatan menambahkan semacam model "mengunci pemetaan memori", tapi bukan ini.
Pertama, hal sederhana: pesan komit tidak ada gunanya. Memiliki
periksa segel untuk mmap(2)
karena pesan komit bahkan tidak dapat diterima, untuk memilih satu contoh acak dari rangkaian (7/8).
Tapi itu tidak terlalu menjadi masalah, karena menurut saya masalah yang lebih mendasar jauh lebih buruk:
- keseluruhan "ON_BEHALF_OF_KERNEL" dan "ON_BEHALF_OF_USERSPACE" hanyalah suara bising dan sama sekali tidak logis. Seluruh konsep perlu dikerjakan ulang.
...
Kristus. Itu *secara harfiah* definisi panggilan sistem remap_file_pages(). Tidak mungkin "ON_BEHALF_OF_KERNEL" masuk akal dalam konteks ini.
...
Bagaimanapun, ini semua adalah NAK yang gemilang pada seri ini dalam bentuk ini. Keluhan saya bukanlah sekedar "perbaiki" yang kecil. Ini adalah masalah mendasar. Jadi mseal() perlu kembali ke papan gambar sebelum dipertimbangkan oleh Linus Torvalds.
Itulah berita seputar Google Mengusulkan Syscall Penyegelan Memori mseal() Baru Untuk Linux, semoga bermanfaat. Disadur dari Phoronix.com.