Microsoft PowerShell dan batas baru malware

(Untuk David Majorka)
16/06/21

Sebagian besar pengguna Microsoft Windows (khususnya, administrator sistem) akan pernah mendengar, setidaknya sekali, tentang Windows PowerShell, juru bahasa perintah ("shell" yang lebih tepat didefinisikan, sangat mirip dengan juru bahasa seperti Bash di Linux) yang memungkinkan untuk "menggerakkan" berbagai fungsi sistem operasi. Fitur-fitur ini termasuk, misalnya, kemampuan untuk menyalin dan memindahkan file, mengunduh aplikasi dari jarak jauh, tetapi juga memeriksa daftar layanan yang sedang berjalan. Perintah-perintah PowerShell mereka juga disebut cmdlet, dan mewakili kombinasi fungsi yang biasanya tertutup dalam satu perintah. Misalnya, cmdlet Konversi Ke-XML membuat representasi XML dari suatu objek.

Yang pasti kurang diketahui oleh orang dalam adalah fakta bahwa PowerShell itu sering digunakan untuk melakukan fungsionalitas berbahaya. Idenya sederhana: fitur yang disediakan oleh shell memungkinkan Anda untuk menjalankan perintah sistem tingkat lanjut, yang juga dapat membahayakan sistem itu sendiri jika digunakan secara tidak benar (misalnya, memuat file tambahan ke dalam memori, mengunduh file berbahaya dari jaringan, dll. ) . Ini adalah keuntungan besar dalam menyerang sistem Windows dibandingkan teknik eksploitasi kerentanan tradisional, yang melibatkan eksekusi kode berbahaya dengan mengeksploitasi kerentanan dalam program yang sudah ada di mesin target (biasanya kedaluwarsa). Melalui PowerShellDengan demikian, tidak perlu mengeksploitasi kerentanan khusus aplikasi atau sistem operasi, tetapi serangan dapat dilakukan secara langsung.

PowerShell itu sering digunakan secara tidak langsung melalui penggunaan vektor infeksi, sering diwakili oleh file Word dan Excel. Sebenarnya, file-file ini berisi makro, atau prosedur otomatis yang biasanya memfasilitasi penulisan dokumen atau spreadsheet (misalnya, secara otomatis mengisi sel tertentu atau melakukan perhitungan tertentu pada beberapa sel). Juga dalam hal ini, makro ini sering digunakan dalam konteks yang benar-benar "jinak", tetapi mereka dapat mengimplementasikan fungsi untuk menghasilkan kode PowerShell. Selain itu, PowerShell itu juga dapat digunakan secara langsung, dengan membuat shell terbalik yang memungkinkan penyerang menggunakan fungsionalitas penuhnya.

Fitur lain dari kode PowerShell itu adalah kemampuan untuk "bersembunyi" dari mata seorang analis, sedemikian rupa sehingga tidak membuat tindakan seseorang menjadi jelas. Fitur ini mengambil nama kebingungan. Oleh karena itu dimungkinkan untuk mengambil beberapa kode yang sangat sederhana dan membuatnya sangat rumit, tanpa mengubah semantiknya (yaitu, program bekerja dengan cara yang persis sama dengan versi yang tidak dikaburkan).

Untuk melawan dan menganalisis malware PowerShell mendung, penelitian ilmiah telah membuat langkah besar dalam beberapa tahun terakhir. Secara khusus, dua studi dari University of Cagliari [1,2] telah mengembangkan teknik yang efisien untuk dapat mengaburkan serangan ini. Secara khusus, alat sumber terbuka yang disebut Dekode Daya, mampu mendapatkan kode PowerShell asli dari varian kaburnya. PowerDecode dapat diunduh secara bebas [3].

Perangkat lunak perusak PowerShell oleh karena itu, mereka merupakan risiko penting untuk sistem Windows, terutama ketika dimuat dari dokumen Office. Namun penelitian ini aktif untuk mengusulkan solusi yang semakin efisien untuk dapat menganalisis dan mendeteksi kategori serangan ini.

Referensi

[1] Pater Ugarte, D. Majorca, F. Cara dan G. Giacinto. PowerDrive: De-Obfuscation dan Analisis Akurat PowerShell Malware, Konferensi ke-16 tentang Deteksi Intrusi dan Malware & Penilaian Kerentanan (DIMVA). Springer, Gothenburg, Swedia, hal. 240-259, 2019.

[2] GM Malandrone, G. Virdis, G. Giacinto dan D. Maiorca. PowerDecode: Decoder Skrip PowerShell yang Didedikasikan untuk Analisis Malware. Dalam Konferensi Italia ke-5 tentang Keamanan Siber (ITASEC), 2021.

[3] Dekode Daya. https://github.com/Malandrone/PowerDecode