Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word

Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word

Artikel ini adalah bagian dari seri Fileless Malware. Semua bagian lain dari seri ini:

Pada artikel ini, saya akan mendalami skenario serangan fileless multi-tahap yang lebih kompleks dengan menyematkan pada sistem. Namun kemudian saya menemukan serangan yang sangat sederhana, tanpa kodeβ€”tidak memerlukan makro Word atau Excel! Dan ini membuktikan hipotesis awal saya yang mendasari rangkaian artikel ini dengan jauh lebih efektif: mendobrak batas luar organisasi mana pun bukanlah tugas yang sulit sama sekali.

Serangan pertama yang akan saya jelaskan mengeksploitasi kerentanan Microsoft Word yang didasarkan pada ketinggalan jaman protokol pertukaran data dinamis (HHH). Dia sudah melakukannya tetap. Yang kedua mengeksploitasi kerentanan yang lebih umum di Microsoft COM dan kemampuan transfer objek.

Kembali ke masa depan dengan DDE

Ada lagi yang ingat DDE? Mungkin tidak banyak. Itu adalah salah satu yang pertama protokol komunikasi antar-proses yang memungkinkan aplikasi dan perangkat mentransfer data.

Saya sendiri sedikit mengenalnya karena saya biasa mengecek dan menguji peralatan telekomunikasi. Saat itu, DDE mengizinkan, misalnya, operator pusat panggilan untuk mentransfer ID penelepon ke aplikasi CRM, yang pada akhirnya membuka kartu pelanggan. Untuk melakukan ini, Anda harus menyambungkan kabel RS-232 antara ponsel dan komputer Anda. Itulah hari-harinya!

Ternyata, Microsoft Word masih tetap mendukung DDE.

Apa yang membuat serangan ini efektif tanpa kode adalah Anda dapat mengakses protokol DDE langsung dari bidang otomatis dalam dokumen Word (angkat topi ke SensePost untuk penelitian dan publikasi tentang itu).

Kode bidang adalah fitur MS Word kuno lainnya yang memungkinkan Anda menambahkan teks dinamis dan sedikit pemrograman ke dokumen Anda. Contoh yang paling jelas adalah field nomor halaman, yang dapat disisipkan ke dalam footer menggunakan nilai {PAGE *MERGEFORMAT}. Hal ini memungkinkan nomor halaman dihasilkan secara otomatis.

Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word
Petunjuk: Anda dapat menemukan item menu Bidang di bawah Sisipkan.

Saya ingat ketika saya pertama kali menemukan fitur ini di Word, saya kagum. Dan hingga patch menonaktifkannya, Word masih mendukung opsi bidang DDE. Idenya adalah bahwa DDE akan memungkinkan Word untuk berkomunikasi langsung dengan aplikasi, sehingga kemudian bisa meneruskan keluaran program ke dalam sebuah dokumen. Itu adalah teknologi yang sangat muda pada saat itu - dukungan untuk pertukaran data dengan aplikasi eksternal. Ini kemudian dikembangkan menjadi teknologi COM, yang juga akan kita lihat di bawah.

Akhirnya para peretas menyadari bahwa aplikasi DDE ini bisa jadi adalah command shell, yang tentu saja meluncurkan PowerShell, dan dari sana para peretas bisa melakukan apapun yang mereka inginkan.
Tangkapan layar di bawah menunjukkan bagaimana saya menggunakan teknik siluman ini: skrip PowerShell kecil (selanjutnya disebut PS) dari bidang DDE memuat skrip PS lain, yang meluncurkan serangan tahap kedua.

Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word
Terima kasih kepada Windows atas peringatan pop-up bahwa bidang DDEAUTO bawaan diam-diam mencoba memulai shell

Metode yang disukai untuk mengeksploitasi kerentanan adalah dengan menggunakan varian dengan bidang DDEAUTO, yang secara otomatis menjalankan skrip saat membuka Dokumen kata.
Mari kita pikirkan apa yang bisa kita lakukan mengenai hal ini.

Sebagai peretas pemula, Anda dapat, misalnya, mengirim email phishing, berpura-pura bahwa Anda berasal dari Layanan Pajak Federal, dan menyematkan bidang DDEAUTO dengan skrip PS untuk tahap pertama (pada dasarnya adalah dropper). Dan Anda bahkan tidak perlu melakukan pengkodean makro apa pun, dll., seperti yang saya lakukan artikel sebelumnya.
Korban membuka dokumen Anda, skrip yang disematkan diaktifkan, dan peretas masuk ke dalam komputer. Dalam kasus saya, skrip PS jarak jauh hanya mencetak pesan, tetapi dapat dengan mudah meluncurkan klien PS Empire, yang akan menyediakan akses shell jarak jauh.
Dan sebelum korban sempat berkata apa-apa, para peretas akan menjadi remaja terkaya di desa tersebut.

Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word
Shell diluncurkan tanpa coding sedikitpun. Bahkan seorang anak kecil pun bisa melakukannya!

DDE dan bidang

Microsoft kemudian menonaktifkan DDE di Word, tetapi perusahaan tersebut menyatakan bahwa fitur tersebut disalahgunakan. Keengganan mereka untuk mengubah apa pun dapat dimengerti. Dalam pengalaman saya, saya sendiri telah melihat contoh ketika memperbarui bidang saat membuka dokumen diaktifkan, tetapi makro Word dinonaktifkan oleh TI (tetapi menampilkan pemberitahuan). Omong-omong, Anda dapat menemukan pengaturan terkait di bagian pengaturan Word.

Namun, meskipun pembaruan bidang diaktifkan, Microsoft Word juga memberi tahu pengguna ketika suatu bidang meminta akses ke data yang dihapus, seperti halnya DDE di atas. Microsoft benar-benar memperingatkan Anda.

Namun kemungkinan besar, pengguna akan tetap mengabaikan peringatan ini dan mengaktifkan pembaruan kolom di Word. Ini adalah salah satu kesempatan langka untuk berterima kasih kepada Microsoft karena telah menonaktifkan fitur DDE yang berbahaya.

Seberapa sulitkah menemukan sistem Windows yang belum dipatch saat ini?

Untuk pengujian ini, saya menggunakan AWS Workspaces untuk mengakses desktop virtual. Dengan cara ini saya mendapatkan mesin virtual MS Office yang belum ditambal yang memungkinkan saya memasukkan bidang DDEAUTO. Saya yakin dengan cara serupa Anda dapat menemukan perusahaan lain yang belum menginstal patch keamanan yang diperlukan.

Misteri benda

Bahkan jika Anda menginstal patch ini, ada lubang keamanan lain di MS Office yang memungkinkan peretas melakukan sesuatu yang sangat mirip dengan apa yang kami lakukan dengan Word. Dalam skenario berikutnya kita akan belajar gunakan Excel sebagai umpan untuk serangan phishing tanpa menulis kode apa pun.

Untuk memahami skenario ini, mari kita ingat Model Objek Komponen Microsoft, atau disingkat COM (Model Objek Komponen).

COM telah ada sejak tahun 1990-an, dan didefinisikan sebagai "model komponen berorientasi objek yang netral bahasa" berdasarkan panggilan prosedur jarak jauh RPC. Untuk pemahaman umum tentang terminologi COM, baca posting ini di StackOverflow.

Pada dasarnya, Anda dapat menganggap aplikasi COM sebagai aplikasi Excel atau Word yang dapat dieksekusi, atau file biner lain yang berjalan.

Ternyata aplikasi COM juga bisa dijalankan skenario β€” JavaScript atau VBScript. Secara teknis itu disebut skriplet. Anda mungkin pernah melihat ekstensi .sct untuk file di Windows - ini adalah ekstensi resmi untuk skrip. Pada dasarnya, ini adalah kode skrip yang dibungkus dalam pembungkus XML:

<?XML version="1.0"?>

<scriptlet>
<registration
description="test"
progid="test"
version="1.00"
classid="{BBBB4444-0000-0000-0000-0000FAADACDC}"
remotable="true">
</registration>
<script language="JScript">
<![CDATA[

var r = new ActiveXObject("WScript.Shell").Run("cmd /k powershell -c Write-Host You have been scripted!");

]]>
</script>
</scriptlet>

Peretas dan pentester telah menemukan bahwa ada utilitas dan aplikasi terpisah di Windows yang menerima objek COM dan, karenanya, juga skriplet.

Saya dapat meneruskan skriplet ke utilitas Windows yang ditulis dalam VBS yang dikenal sebagai pubprn. Itu terletak di kedalaman C:Windowssystem32Printing_Admin_Scripts. Omong-omong, ada utilitas Windows lain yang menerima objek sebagai parameter. Mari kita lihat contoh ini terlebih dahulu.

Petualangan Malware yang Sulit Dicapai, Bagian IV: Bidang DDE dan Dokumen Word
Wajar jika shell dapat diluncurkan bahkan dari skrip cetak. Ayo Microsoft!

Sebagai pengujian, saya membuat skrip jarak jauh sederhana yang meluncurkan shell dan mencetak pesan lucu, "Anda baru saja membuat skrip!" Pada dasarnya, pubprn membuat instance objek scriptlet, memungkinkan kode VBScript menjalankan wrapper. Metode ini jelas memberikan keuntungan bagi peretas yang ingin menyelinap masuk dan bersembunyi di sistem Anda.

Pada postingan selanjutnya, saya akan menjelaskan bagaimana skrip COM dapat dieksploitasi oleh hacker menggunakan spreadsheet Excel.

Untuk pekerjaan rumah Anda, lihatlah Video ini dari Derbycon 2016, yang menjelaskan dengan tepat bagaimana peretas menggunakan skrip. Dan juga membaca artikel ini tentang scriptlet dan semacam moniker.

Sumber: www.habr.com

Tambah komentar