Google Memposting Kode Terbaru Untuk KCFI Sebagai Integritas Aliran Kontrol Yang Lebih Baik Untuk Kernel Linux

Insinyur Google Sami Tolvanen telah memposting seri tambalan “permintaan komentar” kedua di KCFI sebagai implementasi Integritas Aliran Kontrol yang lebih baik untuk penggunaan kernel Linux daripada dukungan CFI yang ada.
Sejak tahun lalu telah ada dukungan CFI berbasis Clang untuk Linux di AArch64 yang juga bergantung pada pengoptimalan waktu tautan (LTO) yang diaktifkan untuk pembuatan kernel. Integritas Aliran Kontrol berbasis pembersih Clang menyediakan pemeriksaan run-time sebelum setiap panggilan fungsi tidak langsung untuk memastikan target adalah fungsi yang valid dengan tipe statis yang valid.
Sami Tolvanen menggambarkan KCFI sebagai, “skema integritas aliran kontrol tepi depan yang diusulkan untuk Dentang, yang lebih cocok untuk penggunaan kernel daripada skema CFI yang ada yang digunakan oleh CONFIG_CFI_CLANG. KCFI tidak memerlukan LTO, tidak mengubah referensi fungsi ke arahkan ke tabel lompat, dan tidak akan merusak persamaan alamat fungsi.”
Dia melanjutkan untuk menambahkan, “KCFI membutuhkan fungsi perakitan yang secara tidak langsung dipanggil dari kode C untuk dianotasi dengan pengidentifikasi tipe. Karena informasi tipe hanya tersedia di C, kompiler memancarkan pengidentifikasi tipe yang diharapkan ke dalam tabel simbol, sehingga mereka dapat direferensikan dari perakitan tanpa harus meng-hardcode hash jenis…Dalam kasus ketidakcocokan jenis, KCFI selalu menjebak. Untuk mendukung penanganan kesalahan, kompilator menghasilkan bagian .kcfi_traps untuk x86_64, yang berisi lokasi setiap jebakan, dan untuk arm64, mengkodekan informasi pendaftaran yang diperlukan ke ESR.”
Selain patch kernel Linux, ada juga pembersih “KCFI” baru yang perlu di-upstream ke repositori LLVM untuk Clang. Tidak ada dukungan kompiler GCC yang serupa sampai sekarang.
Harapan para insinyur Google adalah bahwa KCFI di kernel Linux bisa menjadi pengganti dukungan AArch64 CFI yang sudah ada. Dukungan jalur utama KCFI juga akan menangani x86_64 selain AArch64.
Detail lebih lanjut tentang pekerjaan Integritas Aliran Kontrol terbaru untuk kernel Linux ini dapat ditemukan melalui seri tambalan ini.

Itulah berita seputar Google Memposting Kode Terbaru Untuk KCFI Sebagai Integritas Aliran Kontrol Yang Lebih Baik Untuk Kernel Linux, semoga bermanfaat. Disadur dari Phoronix.com.