Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Artikel ini adalah sebahagian daripada siri Perisian Hasad Tanpa Fail. Semua bahagian lain siri ini:

Saya peminat laman web ini analisis hibrid (analisis hibrid, selepas ini HA). Ini adalah sejenis zoo malware di mana anda boleh memerhati "pemangsa" liar dengan selamat dari jarak yang selamat tanpa diserang. HA menjalankan perisian hasad dalam persekitaran selamat, merekodkan panggilan sistem, fail yang dijana dan trafik Internet, dan membawakan anda semua hasil ini untuk setiap sampel yang dianalisisnya. Oleh itu, anda tidak boleh membuang masa dan usaha anda untuk menyelesaikan sendiri kod yang dikelirukan, tetapi segera memahami semua niat penggodam.

Contoh HA yang menarik perhatian saya menggunakan sama ada skrip JavaScript atau Visual Basic for Applications (VBA) berkod yang dibenamkan sebagai makro dalam dokumen Word atau Excel dan dilampirkan pada e-mel pancingan data. Apabila dibuka, makro ini memulakan sesi PowerShell pada komputer mangsa. Penggodam biasanya menghantar aliran arahan berkod Base64 ke PowerShell. Ini semua dilakukan untuk membuat serangan sukar dikesan oleh penapis web dan perisian antivirus yang bertindak balas kepada kata kunci tertentu.
Nasib baik, HA menyahkod Base64 secara automatik dan serta-merta menunjukkan segala-galanya dalam bentuk yang boleh dibaca. Pada asasnya, anda tidak perlu menumpukan pada cara skrip ini berfungsi, kerana anda akan dapat melihat output penuh arahan untuk menjalankan proses dalam bahagian HA yang sepadan. Lihat contoh di bawah:

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Penghuraian hibrid memintas perintah berkod Base64 yang dihantar ke PowerShell:

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

... dan kemudian menyahkodnya untuk anda. #ajaib

Π’ jawatan sebelum ini Saya mencipta bekas JavaScript saya sendiri yang sedikit keliru untuk menjalankan sesi PowerShell. Skrip saya kemudian, seperti kebanyakan perisian hasad berasaskan PowerShell, memuat turun skrip PowerShell berikut daripada tapak web jauh. Kemudian, sebagai contoh, saya memuat turun PS tidak berbahaya yang mencetak mesej pada skrin. Tetapi masa berubah, dan sekarang saya mencadangkan untuk merumitkan senario.

PowerShell Empire dan Reverse Shell

Salah satu tujuan latihan ini adalah untuk menunjukkan betapa (agaknya) mudah bagi penggodam untuk memintas pertahanan perimeter klasik dan antivirus. Jika blogger IT tanpa kemahiran pengaturcaraan, seperti saya, dalam beberapa malam boleh mencipta perisian hasad yang tidak dapat dikesan (tidak dapat dikesan sepenuhnya, FUD), bayangkan kemungkinan penggodam muda yang berminat!

Dan jika anda seorang ahli keselamatan IT, tetapi pengurus anda tidak memahami potensi implikasi ancaman ini, tunjukkan sahaja artikel ini kepada mereka.

Penggodam bermimpi untuk mendapatkan akses terus ke komputer riba atau pelayan mangsa. Ini sangat mudah dilakukan: apa yang diperlukan oleh penggodam adalah untuk mendapatkan beberapa fail sulit pada komputer riba CEO.

Entah bagaimana saya sudah saya menulis tentang masa jalan PowerShell Empire pasca pengeluaran. Mari kita ingat apa itu.

Ia pada asasnya ialah alat ujian penembusan berasaskan PowerShell yang, antara banyak ciri lain, memudahkan untuk menjalankan cangkerang terbalik. Anda boleh menerokainya dengan lebih terperinci di Tapak rumah PSE.

Jom buat eksperimen sikit. Saya menyediakan persekitaran selamat untuk ujian perisian hasad dalam awan Perkhidmatan Web Amazon. Anda boleh mengikuti contoh saya untuk menunjukkan contoh kerentanan ini dengan cepat dan selamat (dan tidak dipecat kerana menjalankan virus di dalam perimeter perusahaan).

Jika anda menjalankan konsol PowerShell Empire, anda akan melihat sesuatu seperti ini:

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Mula-mula, anda memulakan proses pendengar pada mesin penggodam anda. Masukkan arahan "pendengar", dan nyatakan alamat IP sistem anda menggunakan "set Host". Kemudian mulakan proses pendengar dengan arahan "laksana" (di bawah). Oleh itu, di sebelah anda, anda akan mula menunggu sambungan rangkaian dari cangkerang jauh:

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Untuk bahagian lain, anda perlu menjana kod ejen dengan memasukkan arahan "pelancar" (lihat di bawah). Ini akan menjana kod PowerShell untuk ejen jauh. Ambil perhatian bahawa ia adalah dikodkan Base64 dan mewakili fasa kedua muatan. Dalam erti kata lain, kod JavaScript saya kini akan menarik ejen ini untuk menjalankan PowerShell dan bukannya memaparkan teks pada skrin secara tidak berbahaya dan menyambung ke pelayan PSE jauh kami untuk menjalankan shell terbalik.

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi
Sihir cangkerang terbalik. Perintah PowerShell yang dikodkan ini akan menyambung kepada pendengar saya dan memulakan cangkerang jauh.

Untuk menunjukkan kepada anda percubaan ini, saya mengambil peranan sebagai mangsa yang tidak bersalah dan membuka Evil.doc, dengan itu menjalankan JavaScript kami. Ingat bahagian pertama? PowerShell telah dikonfigurasikan untuk tidak muncul, jadi mangsa tidak akan melihat apa-apa yang luar biasa. Walau bagaimanapun, jika anda membuka Pengurus Tugas Windows, anda akan melihat proses PowerShell latar belakang, yang masih tidak akan menyebabkan sebarang penggera untuk kebanyakan. Kerana ia adalah PowerShell biasa, bukan?

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Sekarang, apabila anda menjalankan Evil.doc, proses latar belakang tersembunyi akan bersambung ke pelayan yang menjalankan PowerShell Empire. Dengan memakai topi putih seorang penggodam-pentester, saya kembali ke konsol PowerShell Empire, dan kini saya melihat mesej bahawa ejen jauh saya aktif.

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Kemudian saya menaip arahan "berinteraksi" untuk membuka cangkerang dalam PSE - dan inilah saya! Pendek kata, saya menggodam pelayan Taco yang saya sediakan sendiri suatu ketika dahulu.

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi

Apa yang saya baru tunjukkan tidak memerlukan banyak usaha daripada anda. Anda boleh melakukan semua ini dengan mudah dalam rehat makan tengah hari selama satu hingga dua jam untuk meningkatkan pengetahuan anda tentang keselamatan maklumat. Ia juga merupakan cara terbaik untuk memahami cara penggodam memintas pertahanan perimeter keselamatan luaran dan menyelinap ke dalam sistem anda.

Pengurus IT yang berpendapat mereka telah membina pertahanan yang tidak dapat ditembusi terhadap sebarang jenis pencerobohan mungkin juga akan menganggapnya sebagai pendidikan - sudah tentu, jika anda boleh meyakinkan mereka untuk duduk di sebelah anda cukup lama.

Kembali ke realiti

Seperti yang saya jangkakan, penggodaman sebenar, tidak dapat dilihat oleh pengguna biasa, hanyalah variasi daripada apa yang baru saya nyatakan. Untuk mengumpul bahan untuk penerbitan seterusnya, saya mula mencari sampel HA, yang berfungsi dengan cara yang sama seperti contoh ciptaan saya. Dan saya tidak perlu mencarinya untuk masa yang lama - terdapat banyak pilihan untuk teknik serangan sedemikian di tapak.

Malware yang akhirnya saya temui di HA ialah skrip VBA yang dibenamkan dalam dokumen Word. Iaitu, saya tidak perlu memalsukan sambungan dokumen, perisian hasad ini benar-benar dokumen Microsoft Word yang paling biasa. Sekiranya anda tertanya-tanya, saya memilih corak yang dipanggil ini rfq.doc.

Saya dengan cepat mengetahui bahawa anda selalunya tidak boleh menarik skrip VBA berniat jahat terus daripada dokumen. Penggodam memampatkan dan menyembunyikannya, dan ia tidak kelihatan dalam alat makro terbina dalam Word. Anda memerlukan alat khas untuk mengekstraknya. Nasib baik saya terjumpa pengimbas Pejabat MalScanner Frank Baldwin. Terima kasih Frank.

Menggunakan alat ini, saya dapat mengeluarkan kod VBA yang sangat keliru. Ia kelihatan seperti ini:

Pengembaraan Perisian Hasad Sukar Bahagian II: Skrip VBA Tersembunyi
Obfuscation dilakukan oleh profesional dalam bidang mereka. Saya kagum!

Penyerang benar-benar pandai mengaburkan kod, tidak seperti usaha saya mencipta Evil.doc. Okey, dalam bahagian seterusnya, kami akan mendapatkan penyahpepijat VBA kami, menggali lebih mendalam kod ini dan membandingkan analisis kami dengan keputusan HA.

Sumber: www.habr.com

Tambah komen