Bug kernel Linux yang buruk ditemukan dan diperbaiki
Security

Bug kernel Linux yang buruk ditemukan dan diperbaiki

Bug “keamanan” Linux yang paling banyak dilaporkan sebenarnya bukan bug Linux. Misalnya, laporan vendor keamanan CrowdStrike tentang keluarga malware terbesar berbasis Linux benar-benar tentang kesalahan keamanan administrasi sistem dengan telnet, SSH, dan Docker, bukan Linux sama sekali. Tapi, bukan berarti Linux tidak memiliki celah keamanan. Misalnya, masalah kernel Linux baru yang buruk baru saja muncul.

Dalam hal ini, ada bug heap overflow di legacy_parse_param di program fs/fs_context.c kernel Linux. Parameter ini digunakan dalam sistem file Linux selama pembuatan superblock untuk mount dan konfigurasi ulang superblock untuk remount. Superblock mencatat semua karakteristik sistem file seperti ukuran file, ukuran blok, blok penyimpanan kosong dan terisi. Jadi, ya, itu penting.

Penghitungan legacy_parse_param() “PAGE_SIZE – 2 – size” salah dibuat sebagai tipe yang tidak ditandatangani. Ini berarti nilai “ukuran” yang besar menghasilkan nilai positif yang tinggi alih-alih nilai negatif seperti yang diharapkan. Ups.

Ini, pada gilirannya, berarti Anda menyalin data di luar pelat memori yang dialokasikan untuk itu. Dan, seperti yang diketahui semua pemrogram, menulis di luar memori yang seharusnya dapat diakses oleh program Anda adalah hal yang buruk.

Salah satu alasan utama mengapa Rust dimasukkan ke dalam Linux adalah karena Rust membuat kesalahan memori semacam ini lebih sulit dilakukan. Seperti yang diketahui setiap pengembang C, terlalu mudah untuk tersandung alokasi memori dalam program C.

Jadi, seberapa buruk itu? Dengan tes penilaian Common Vulnerability Scoring System (CVSS) v3.1, ini adalah 7.7 yang solid. Itu dianggap sebagai kerentanan keamanan tinggi.

Penyerang lokal dapat menggunakannya untuk meningkatkan hak pengguna mereka atau merusak sistem. Ini dapat dilakukan dengan program yang dibuat khusus yang memicu luapan bilangan bulat ini. Setelah selesai, sangat mudah untuk mengeksekusi kode arbitrer dan memberikan hak akses root kepada penyerang.

Untuk mengeksploitasinya, hak istimewa CAP_SYS_ADMIN harus diaktifkan. Jika demikian, pengguna lokal yang tidak memiliki hak dapat membuka sistem file yang tidak mendukung antarmuka pemrograman aplikasi Konteks Sistem File (API). Dalam situasi ini, ia kembali ke penanganan warisan, dan dari sana, kelemahannya dapat meningkatkan hak istimewa sistem penyerang.

Mengeksploitasi tidak sesulit yang Anda bayangkan. Penemunya, pengembang kernel Linux William Liu melaporkan bahwa dia membuat eksploitasi terhadap Ubuntu 20.04 dan eksploitasi pelarian kontainer terhadap Container-Optimized (COS) Google yang dikeraskan.

Lubang keamanan ini diperkenalkan kembali pada 28 Februari 2019, di kernel Linux 5.1-rc1. Sekarang hadir di semua kernel Linux. Ya, semuanya. Untung patchnya udah masuk.

Anda juga dapat menonaktifkannya dengan menonaktifkan ruang nama pengguna dengan mengatur user.max_user_namespaces dengan kode shell berikut pada keluarga Red Hat Linux.

  • echo “user.max_user_namespaces=0” > /etc/sysctl.d/userns.conf
  • sysctl -p /etc/sysctl.d/userns.conf

Di Ubuntu dan distro terkait, Anda dapat melindungi sistem Anda dengan kode shell ini:

  • sysctl -w kernel.unprivileged_userns_clone=0

Namun, perlu diingat bahwa Anda harus memiliki namespace yang tersedia di distro Linux dalam container, seperti Red Hat OpenShift Container Platform karena fungsi ini perlu diaktifkan. Dalam keadaan ini, Anda harus menambal distro Linux Anda segera setelah distributor Anda menyediakan tambalan.

Tetap aman, tetap ditambal.

Cerita terkait:

Posted By : togel hari ini hongkong