Security

Serangan Malware GlassWorm Kembali Mengintai via 73 Ekstensi “Sleeper” OpenVSX

Gelombang baru kampanye serangan malware GlassWorm dilaporkan tengah menargetkan ekosistem OpenVSX. Kali ini, aktor ancaman menggunakan strategi yang lebih licik dengan menyusupkan 73 ekstensi “sleeper” (tidur) yang bersembunyi dan baru akan berubah menjadi berbahaya setelah menerima pembaruan.

Menurut laporan dari para peneliti di perusahaan keamanan aplikasi Socket, enam dari ekstensi tersebut telah diaktifkan dan secara aktif mengirimkan malware, sementara sisanya dinilai sangat mencurigakan dan diyakini sedang “tertidur” menunggu instruksi lanjutan.

“Jumlah ini mungkin berubah karena pembaruan baru terus muncul, tetapi polanya konsisten dengan gelombang GlassWorm sebelumnya,” ungkap para peneliti di Socket.

Strategi “Sleeper” yang Mengecoh

Saat pertama kali diunggah ke repositori, ekstensi-ekstensi ini sama sekali tidak berbahaya (benign). Namun, mereka dirancang untuk mengunduh dan mengirimkan muatan (payload) berbahaya pada tahap selanjutnya.

Strategi baru ini menunjukkan bahwa aktor ancaman sengaja mengubah taktik mereka. Alih-alih menyematkan muatan secara langsung sejak awal—yang membuatnya rentan terdeteksi oleh sistem keamanan—mereka kini mengirimkan ekstensi yang tidak berbahaya ke satu ekosistem, lalu memperkenalkan malware melalui pembaruan (update) berikutnya.

Sebagai catatan, GlassWorm adalah kampanye serangan rantai pasokan (supply chain attack) berkelanjutan yang pertama kali diamati pada bulan Oktober lalu. Awalnya, mereka menggunakan karakter Unicode tak kasat mata untuk menyembunyikan kode berbahaya yang bertujuan mencuri dompet mata uang kripto dan kredensial pengembang.

Kampanye ini kemudian meluas melintasi berbagai ekosistem, termasuk repositori GitHub, paket npm, Visual Studio Code Marketplace, hingga OpenVSX. Mereka bahkan telah terdeteksi menargetkan pengguna macOS dengan klien dompet kripto yang telah disusupi Trojan.

Kloning Ekstensi Sah dan Metode Pengiriman

Socket menemukan bahwa 73 ekstensi yang terlibat dalam gelombang terbaru ini merupakan kloningan dari ekstensi yang sah. Ekstensi palsu ini dirancang untuk menipu pengembang yang tidak terlalu memperhatikan detail di luar tampilan visual.

Dalam satu kasus, penyerang menggunakan ikon yang persis sama dengan ekstensi asli, serta mengadopsi penamaan dan deskripsi yang sangat mirip. Indikator utama untuk membedakannya hanyalah nama penerbit (publisher) dan pengidentifikasi uniknya (unique identifier).

Alih-alih langsung membawa malware, ekstensi “sleeper” ini kini bertindak sebagai pemuat (thin loaders) yang mengambil malware melalui salah satu dari tiga metode berikut:

  • Mengambil paket VSIX sekunder: Ekstensi mengambil paket dari GitHub pada saat runtime (waktu berjalan) dan menginstalnya menggunakan perintah CLI.
  • Memuat modul terkompilasi: Ekstensi memuat file .node khusus platform yang berisi logika inti, termasuk mengambil muatan tambahan dan mengeksekusi rutinitas instalasi di seluruh editor yang didukung.
  • JavaScript yang diofuskasi: Beberapa varian sepenuhnya mengandalkan JavaScript yang sangat disamarkan (obfuscated) yang akan didekode pada saat runtime untuk mengambil dan menginstal ekstensi berbahaya. Beberapa di antaranya bahkan menyertakan URL terenkripsi atau URL cadangan untuk pengambilan muatan.

Target Pencurian dan Mitigasi

Meskipun Socket tidak membagikan rincian teknis spesifik tentang muatan terbarunya, riwayat serangan GlassWorm sebelumnya selalu ditujukan untuk menyedot data sensitif pengembang. Ini mencakup data dompet mata uang kripto, kredensial, token akses, kunci SSH, dan data lingkungan pengembangan.

Socket telah menerbitkan daftar lengkap 73 ekstensi yang diyakini sebagai bagian dari gelombang terbaru GlassWorm ini. Pengembang perangkat lunak yang merasa telah menginstal salah satu dari ekstensi mencurigakan di OpenVSX tersebut sangat disarankan untuk segera merotasi semua kredensial/kunci rahasia mereka dan membersihkan lingkungan sistem dari awal.

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button