Kecerdasan Data Generatif

Kelemahan Windows 'MagicDot' Memungkinkan Aktivitas Rootkit Tanpa Hak Istimewa

Tanggal:

BLACK HAT ASIA – Singapura – Masalah umum yang terkait dengan proses konversi jalur DOS-ke-NT di Windows membuka risiko signifikan bagi bisnis dengan memungkinkan penyerang mendapatkan kemampuan pasca-eksploitasi seperti rootkit untuk menyembunyikan dan menyamar sebagai file, direktori, dan proses.

Hal ini diungkapkan oleh Or Yair, peneliti keamanan di SafeBreach, yang menguraikan masalah ini dalam sesi di sini minggu ini. Dia juga merinci empat kerentanan berbeda terkait dengan masalah tersebut, yang menurutnya dijuluki “MagicDot” – termasuk bug eksekusi kode jarak jauh yang berbahaya yang dapat dipicu hanya dengan mengekstraksi arsip.

Titik & Spasi dalam Konversi Jalur DOS-ke-NT

Kelompok masalah MagicDot muncul karena cara Windows mengubah jalur DOS ke jalur NT.

Saat pengguna membuka file atau folder di PC mereka, Windows melakukannya dengan mereferensikan jalur di mana file tersebut berada; biasanya, itu adalah jalur DOS yang mengikuti format “C:UsersUserDocumentsexample.txt”. Namun, fungsi dasar berbeda yang disebut NtCreateFile digunakan untuk benar-benar melakukan operasi pembukaan file, dan NtCreateFile meminta jalur NT dan bukan jalur DOS. Dengan demikian, Windows mengubah jalur DOS yang familiar yang terlihat oleh pengguna menjadi jalur NT, sebelum memanggil NtCreateFile untuk mengaktifkan operasi.

Masalah yang dapat dieksploitasi terjadi karena, selama proses konversi, Windows secara otomatis menghapus titik apa pun dari jalur DOS, beserta spasi tambahan di akhir. Jadi, jalur DOS seperti ini:

  • C:contohcontoh.   

  • C:contohcontoh… 

  • C:contohcontoh    

semuanya dikonversi ke “??C:exampleexample” sebagai jalur NT.

Yair menemukan bahwa penghapusan karakter yang salah secara otomatis ini dapat memungkinkan penyerang membuat jalur DOS yang dibuat khusus yang akan dikonversi ke jalur NT pilihan mereka, yang kemudian dapat digunakan untuk membuat file tidak dapat digunakan atau untuk menyembunyikan konten dan aktivitas berbahaya.

Mensimulasikan Rootkit Tanpa Hak Istimewa

Masalah MagicDot pertama dan terpenting menciptakan peluang bagi sejumlah teknik pasca-eksploitasi yang membantu penyerang pada mesin tetap diam-diam.

Misalnya, konten berbahaya dapat dikunci dan mencegah pengguna, bahkan admin, untuk memeriksanya. “Dengan menempatkan titik tambahan sederhana di akhir nama file berbahaya atau dengan memberi nama file atau direktori hanya dengan titik dan/atau spasi, saya dapat membuat semua program ruang pengguna yang menggunakan API normal tidak dapat diakses oleh mereka… pengguna akan tidak bisa membaca, menulis, menghapus, atau melakukan apa pun dengannya,” jelas Yair dalam sesi tersebut.

Kemudian, dalam serangan terkait, Yair menemukan bahwa teknik tersebut dapat digunakan untuk menyembunyikan file atau direktori di dalam file arsip.

“Saya hanya mengakhiri nama file dalam arsip dengan sebuah titik untuk mencegah Explorer mencantumkan atau mengekstraknya,” kata Yair. “Hasilnya, saya dapat menempatkan file berbahaya di dalam zip yang tidak berbahaya — siapa pun yang menggunakan Explorer untuk melihat dan mengekstrak konten arsip tidak dapat melihat file tersebut ada di dalamnya.”

Metode serangan ketiga melibatkan penyembunyian konten berbahaya dengan meniru jalur file yang sah.

“Jika ada file tidak berbahaya bernama 'jinak', saya dapat [menggunakan konversi jalur DOS-ke-NT] untuk membuat file berbahaya di direktori yang sama [juga diberi nama] jinak,” jelasnya, seraya menambahkan bahwa pendekatan yang sama dapat digunakan untuk meniru folder dan bahkan proses Windows yang lebih luas. “Akibatnya, saat pengguna membaca file berbahaya tersebut, konten dari file asli yang tidak berbahaya akan dikembalikan,” sehingga korban tidak sadar bahwa mereka sebenarnya membuka konten berbahaya.

Secara keseluruhan, memanipulasi jalur MagicDot dapat memberikan kemampuan seperti rootkit kepada musuh tanpa hak istimewa admin, jelas Yair, yang menerbitkan catatan teknis rinci tentang metode serangan bersamaan dengan sesi tersebut.

“Saya menemukan bahwa saya dapat menyembunyikan file dan proses, menyembunyikan file dalam arsip, memengaruhi analisis file prefetch, membuat pengguna Task Manager dan Process Explorer mengira file malware adalah file executable terverifikasi yang diterbitkan oleh Microsoft, menonaktifkan Process Explorer dengan penolakan layanan (DoS) kerentanan, dan banyak lagi,” katanya – semuanya tanpa hak istimewa admin atau kemampuan untuk menjalankan kode di kernel, dan tanpa intervensi dalam rangkaian panggilan API yang mengambil informasi.

“Penting bagi komunitas keamanan siber untuk menyadari risiko ini dan mempertimbangkan untuk mengembangkan teknik dan aturan deteksi rootkit yang tidak memiliki hak istimewa,” dia memperingatkan.

Serangkaian Kerentanan “MagicDot”.

Selama penelitiannya terhadap jalur MagicDot, Yair juga berhasil mengungkap empat kerentanan berbeda terkait dengan masalah mendasar, tiga di antaranya telah ditambal oleh Microsoft.

Satu kerentanan eksekusi kode jarak jauh (RCE) (CVE-2023-36396, CVSS 7.8) dalam logika ekstraksi baru Windows untuk semua jenis arsip yang baru didukung memungkinkan penyerang membuat arsip berbahaya yang akan menulis di mana saja yang mereka pilih di komputer jarak jauh setelah diekstraksi, sehingga mengarah pada eksekusi kode.

“Pada dasarnya, katakanlah Anda mengunggah arsip ke file Anda Repositori GitHub mengiklankannya sebagai alat keren yang tersedia untuk diunduh,” kata Yair kepada Dark Reading. “Dan ketika pengguna mendownloadnya, itu tidak dapat dieksekusi, Anda cukup mengekstrak arsipnya, yang dianggap sebagai tindakan yang sepenuhnya aman tanpa risiko keamanan. Tapi sekarang, ekstraksi itu sendiri mampu menjalankan kode di komputer Anda, dan itu sangat salah dan sangat berbahaya.”

Bug kedua adalah kerentanan peningkatan hak istimewa (EoP) (CVE-2023-32054, CVSS 7.3) yang memungkinkan penyerang menulis ke dalam file tanpa hak istimewa dengan memanipulasi proses pemulihan versi sebelumnya dari salinan bayangan.

Bug ketiga adalah Process Explorer unprivileged DOS untuk bug anti-analisis, yang CVE-2023-42757 telah dicadangkan, dengan detail menyusul. Dan bug keempat, juga masalah EoP, memungkinkan penyerang yang tidak memiliki hak istimewa untuk menghapus file. Microsoft mengonfirmasi bahwa kelemahan tersebut menyebabkan “perilaku tak terduga” namun belum mengeluarkan CVE atau perbaikannya.

“Saya membuat folder di dalam folder demo bernama… dan di dalamnya saya tulis file bernama c.txt,” jelas Yair. “Kemudian ketika administrator mencoba menghapus… folder, seluruh folder demo malah dihapus.”

Konsekuensi “MagicDot” yang Berpotensi Lebih Luas

Sementara Microsoft mengatasi kerentanan spesifik Yair, konversi jalur DOS-ke-NT secara otomatis menghilangkan titik dan spasi tetap ada, meskipun itulah akar penyebab kerentanan tersebut.

“Itu berarti mungkin ada lebih banyak potensi kerentanan dan teknik pasca-eksploitasi yang dapat ditemukan dengan menggunakan masalah ini,” kata peneliti tersebut kepada Dark Reading. “Masalah ini masih ada dan dapat menyebabkan lebih banyak masalah dan kerentanan, yang bisa jauh lebih berbahaya daripada yang kita ketahui.”

Dia menambahkan bahwa masalah ini memiliki konsekuensi di luar Microsoft.

“Kami yakin implikasinya relevan tidak hanya pada Microsoft Windows, yang merupakan OS desktop yang paling banyak digunakan di dunia, namun juga pada semua vendor perangkat lunak, yang sebagian besar juga membiarkan masalah yang diketahui tetap ada dari versi ke versi perangkat lunak mereka,” ia memperingatkan. dalam presentasinya.

Sementara itu, pengembang perangkat lunak dapat membuat kode mereka lebih aman terhadap kerentanan jenis ini dengan memanfaatkan jalur NT daripada jalur DOS, katanya.

“Sebagian besar panggilan API tingkat tinggi di Windows mendukung jalur NT,” kata Yair dalam presentasinya. “Menggunakan jalur NT menghindari proses konversi dan memastikan jalur yang disediakan adalah jalur yang sama dengan yang sebenarnya dioperasikan.”

Untuk bisnis, tim keamanan harus membuat deteksi yang mencari titik dan ruang jahat dalam jalur file.

“Ada deteksi yang cukup mudah yang dapat Anda kembangkan untuk hal ini, yaitu dengan mencari file atau direktori yang memiliki titik atau spasi di dalamnya, karena jika Anda menemukannya di komputer Anda, itu berarti seseorang melakukannya dengan sengaja karena tidak itu mudah dilakukan,” Yair memberitahu Dark Reading. “Pengguna biasa tidak bisa begitu saja membuat file yang diakhiri dengan titik atau spasi, Microsoft akan mencegahnya. Penyerang perlu menggunakan a API yang lebih rendah yang lebih dekat dengan inti, dan memerlukan keahlian untuk mencapai hal ini.”

tempat_img

Intelijen Terbaru

tempat_img

Hubungi kami

Hai, yang di sana! Apa yang bisa saya bantu?