Kerentanan yang dapat dieksploitasi dari jarak jauh pada agen OMI yang diterapkan di lingkungan Linux Microsoft Azure

Pelanggan platform cloud Microsoft Azure yang menggunakan Linux di mesin virtual mengalami kerentanan kritis (CVE-2021-38647) yang memungkinkan eksekusi kode jarak jauh dengan hak root. Kerentanan tersebut diberi nama kode OMIGOD dan terkenal karena masalahnya ada pada aplikasi Agen OMI, yang diinstal secara diam-diam di lingkungan Linux.

Agen OMI diinstal dan diaktifkan secara otomatis saat menggunakan layanan seperti Azure Automation, Azure Automatic Update, Azure Operations Management Suite, Azure Log Analytics, Azure Configuration Management, Azure Diagnostics, dan Azure Container Insights. Misalnya, lingkungan Linux di Azure yang pemantauannya diaktifkan rentan terhadap serangan. Agen adalah bagian dari paket terbuka OMI (Open Management Infrastructure Agent) dengan penerapan tumpukan DMTF CIM/WBEM untuk manajemen infrastruktur TI.

Agen OMI diinstal pada sistem di bawah pengguna omsagent dan membuat pengaturan di /etc/sudoers untuk menjalankan serangkaian skrip dengan hak root. Selama pengoperasian beberapa layanan, soket jaringan pendengar dibuat pada port jaringan 5985, 5986 dan 1270. Pemindaian dalam layanan Shodan menunjukkan adanya lebih dari 15 ribu lingkungan Linux yang rentan di jaringan. Saat ini, prototipe eksploitasi yang berfungsi telah tersedia untuk umum, memungkinkan Anda untuk mengeksekusi kode Anda dengan hak root pada sistem tersebut.

Masalahnya diperparah oleh fakta bahwa penggunaan OMI tidak didokumentasikan secara eksplisit di Azure dan Agen OMI diinstal tanpa peringatan - Anda hanya perlu menyetujui persyaratan layanan yang dipilih saat menyiapkan lingkungan dan Agen OMI akan menjadi diaktifkan secara otomatis, mis. sebagian besar pengguna bahkan tidak menyadari kehadirannya.

Metode eksploitasinya sepele - cukup kirimkan permintaan XML ke agen, hapus header yang bertanggung jawab untuk otentikasi. OMI menggunakan otentikasi saat menerima pesan kontrol, memverifikasi bahwa klien memiliki hak untuk mengirim perintah tertentu. Inti dari kerentanan adalah ketika header β€œOtentikasi”, yang bertanggung jawab untuk otentikasi, dihapus dari pesan, server menganggap verifikasi berhasil, menerima pesan kontrol dan mengizinkan perintah dijalankan dengan hak root. Untuk menjalankan perintah sewenang-wenang dalam sistem, cukup menggunakan perintah standar ExecuteShellCommand_INPUT dalam pesan. Misalnya, untuk meluncurkan utilitas β€œid”, cukup kirimkan permintaan: curl -H β€œContent-Type: application/soap+xml;charset=UTF-8” -k β€”data-binary β€œ@http_body.txt” https: //10.0.0.5:5986/wsman ... pengenal 3

Microsoft telah merilis pembaruan OMI 1.6.8.1 yang memperbaiki kerentanan, namun belum dikirimkan ke pengguna Microsoft Azure (versi lama OMI masih diinstal di lingkungan baru). Pembaruan agen otomatis tidak didukung, sehingga pengguna harus melakukan pembaruan paket manual menggunakan perintah "dpkg -l omi" di Debian/Ubuntu atau "rpm -qa omi" di Fedora/RHEL. Sebagai solusi keamanan, disarankan untuk memblokir akses ke port jaringan 5985, 5986, dan 1270.

Selain CVE-2021-38647, OMI 1.6.8.1 juga mengatasi tiga kerentanan (CVE-2021-38648, CVE-2021-38645, dan CVE-2021-38649) yang memungkinkan pengguna lokal yang tidak memiliki hak untuk mengeksekusi kode sebagai root.

Sumber: opennet.ru

Tambah komentar