Kami menemukan tiga kerentanan dalam systemd - kami memahami apa masalahnya

Pada awal bulan, pakar keamanan dari Qualys segera menemukan tiga kerentanan dalam systemd - subsistem inisialisasi Linux - memungkinkan penyerang untuk mendapatkan hak pengguna super. Kami memberi tahu apa esensi mereka dan distribusi apa yang dikenakan kepada mereka.


/ Flickr / David Goehring / CC BY / Foto berubah

Kerentanan baru yang lama


Ketiga kerentanan dikaitkan dengan layanan pencatatan log systemd, journald. Pengidentifikasi berikut telah diberikan kepada mereka dalam database CVE : CVE-2018-16864 , CVE-2018-16865 dan CVE-2018-16866 . Kerentanan ini memberi penyerang kemampuan untuk mendapatkan hak akses root pada sistem yang diserang.

Semua distribusi tanpa fungsi perlindungan ruang pengguna ( -fstack-check ) - Debian, Ubuntu, Fedora, CentOS, Mageia, dll berisiko, antara lain SUSE Linux Enterprise 15 dan openSUSE Leap 15.0, serta versi Fedora 28 dan 29.

Menariknya, ketiga kerentanan tersebut telah ada selama beberapa tahun , tidak ada yang diketahui tentang mereka. CVE-2018-16864 muncul pada 2013, tetapi menjadi mungkin untuk mengoperasikannya pada 2016, ketika systemd diperbarui ke versi 230. CVE-2018-16865 muncul di sistem operasi pada 2011, tetapi menjadi kritis hanya dua tahun setelah rilis systemd versi 201.

Adapun kerentanan ketiga (CVE-2018-16866), itu ada sejak 2015. Namun, itu tidak sengaja ditutup dengan pembaruan systemd v240 beberapa tahun kemudian. Mesin tanpa tambalan ini masih dalam bahaya.

Apa inti dari "lubang" yang ditemukan


Kerentanan CVE-2018-16864 memungkinkan penyerang untuk memanipulasi baris perintah dan mengirim banyak argumen (dengan berat beberapa megabyte) ke systemd-journald, sehingga menyebabkan proses crash. Lebih jauh, peretas memiliki kesempatan untuk mengambil kendali dari extended instruction pointer (EIP).

Masalah dengan CVE-2018-16864 terkait dengan menulis pesan besar ke / run / systemd / jurnal / socket. Akibatnya, bagian dari pesan ini keluar dari tumpukan dan memasuki wilayah mmap . Setelah itu, seorang penyerang dapat menimpa segmen baca-tulis dari libc dan mengganti fungsi pointer dan menjalankan rantai program yang diinginkan pada sistem.

Adapun CVE-2018-16866, itu terkait dengan kesalahan parsing garis. Jika Anda mengirim pesan khusus (diakhiri dengan karakter titik dua) dalam format syslog ke sistem pencatatan, sistem akan mengabaikan akhir baris dan menulis bagian tumpukan berikutnya ke log.

Kerentanan kedua dan ketiga memungkinkan implementasi serangan yang disebut kembali ke perpustakaan dan menjalankan fungsi apa pun pada mesin korban. Menurut para ahli dari Qualys, mereka berhasil membuat exploit dan mendapatkan hak pengguna super pada komputer dengan arsitektur i386 dan amd64 masing-masing dalam 10 dan 70 menit.

β€œKerentanan ini cukup serius, mengingat mereka memungkinkan untuk meningkatkan hak akses dalam sistem. Para penulis masih merahasiakan kode eksploit mereka, karena ada sejumlah besar distribusi "lubang", komentar Sergey Belkin, kepala departemen pengembangan penyedia IaaS 1cloud.ru . "Mereka akan menerbitkannya ketika kerentanan ditutup." Beberapa pengembang, misalnya dari Ubuntu dan Red Hat , telah memposting patch yang diperlukan. Mereka dapat ditemukan di repositori resmi. "


/ Flickr / bradleypjohnson / CC BY

Kerentanan apa yang ditemukan di systemd


Terakhir kali kerentanan systemd ditemukan pada Oktober 2018. Klien DHCPv6 dari manajer layanan secara otomatis dimulai ketika pesan diterima dari server DHCP di jaringan lokal atau penyedia layanan Internet. Menggunakan pesan ini dalam systemd dapat menyebabkan kegagalan memori dan menguasai komputer.

Sebelum ini, beberapa bug dalam kode manajer layanan ditemukan pada tahun 2017. Salah satunya memungkinkan penyerang menggunakan paket TCP untuk mengeksekusi kode apa pun pada sistem. Paket TCP "dipaksa" systemd untuk mengalokasikan terlalu sedikit ruang penyangga untuk pesan. Ini memungkinkan kami untuk menulis data acak di luar buffer ke dalam memori utama.

Kerentanan 2017 lainnya terkait dengan mendapatkan hak pengguna super yang tidak sah. Dalam beberapa distribusi, misalnya CentOS dan RHEL7, dalam systemd dimungkinkan untuk membuat profil dengan nama pengguna yang dimulai dengan angka. Meskipun biasanya di Linux fitur ini tidak disediakan. Tetapi jika pengguna seperti itu muncul dalam sistem, manajer layanan memberinya hak administrator.

Semua kerentanan ini ditutup dalam waktu singkat. "Tambalan" untuk "lubang" baru yang ditemukan pada bulan Januari juga secara bertahap muncul. Dapat diharapkan bahwa kerentanan akan segera ditutup di sebagian besar distribusi, dan administrator server dan komputer Linux hanya perlu menginstal pembaruan sistem.

Posting dari blog 1Cloud perusahaan:

Source: https://habr.com/ru/post/id437556/


All Articles