Peneliti keamanan siber telah menemukan serangan rantai pasokan perangkat lunak yang tetap aktif selama lebih dari setahun pada registri paket npm dengan memulai sebagai perpustakaan yang tidak berbahaya dan kemudian menambahkan kode berbahaya untuk mencuri data sensitif dan menambang mata uang kripto pada sistem yang terinfeksi.
Paket tersebut, bernama @0xengine/xmlrpc, awalnya diterbitkan pada 2 Oktober 2023 sebagai server dan klien XML-RPC berbasis JavaScript untuk Node.js. Ini telah diunduh 1.790 kali hingga saat ini dan masih tersedia untuk diunduh dari repositori.
Periksamarxyang menemukan paket tersebut, mengatakan bahwa kode berbahaya tersebut diperkenalkan secara strategis di versi 1.3.4 sehari kemudian, menyimpan fungsionalitas untuk mengumpulkan informasi berharga seperti kunci SSH, riwayat bash, metadata sistem, dan variabel lingkungan setiap 12 jam, dan mengekstraknya melalui layanan seperti Dropbox dan file.io.
“Serangan ini mencapai distribusi melalui berbagai vektor: instalasi npm langsung dan sebagai ketergantungan tersembunyi dalam repositori yang tampak sah,” kata peneliti keamanan Yehuda Gelb dalam laporan teknis yang diterbitkan minggu ini.
Pendekatan kedua melibatkan repositori proyek GitHub bernama yawpp (kependekan dari “Yet Another WordPress Poster”) yang dimaksudkan sebagai alat yang dirancang untuk membuat postingan secara terprogram di platform WordPress.
File “package.json”-nya mencantumkan versi terbaru @0xengine/xmlrpc sebagai ketergantungan, sehingga menyebabkan paket npm berbahaya diunduh dan diinstal secara otomatis ketika pengguna mencoba menyiapkan alat yawpp di sistem mereka.
Saat ini tidak jelas apakah pengembang alat tersebut sengaja menambahkan paket ini sebagai ketergantungan. Repositori telah di-fork satu kali pada saat penulisan. Tentu saja, pendekatan ini merupakan metode distribusi malware lain yang efektif karena mengeksploitasi kepercayaan pengguna terhadap ketergantungan paket.
Setelah terinstal, malware ini dirancang untuk mengumpulkan informasi sistem, membangun persistensi pada host melalui systemd, dan menyebarkan penambang cryptocurrency XMRig. Sebanyak 68 sistem yang disusupi ditemukan secara aktif menambang cryptocurrency melalui dompet Monero penyerang.
Selain itu, ia dilengkapi untuk terus memantau daftar proses yang berjalan untuk memeriksa keberadaan perintah seperti top, iostat, sar, melirik, dstat, nmon, vmstat, dan ps, dan menghentikan semua proses terkait penambangan jika ditemukan. Itu juga mampu menangguhkan operasi penambangan jika aktivitas pengguna terdeteksi.
“Penemuan ini menjadi pengingat bahwa umur panjang sebuah paket dan riwayat pemeliharaan yang konsisten tidak menjamin keamanannya,” kata Gelb. “Baik paket awalnya berbahaya atau paket sah yang disusupi melalui pembaruan, rantai pasokan perangkat lunak memerlukan kewaspadaan terus-menerus – baik selama pemeriksaan awal dan sepanjang siklus hidup paket.”
Pengungkapannya datang sebagai Lab Keamanan Datadog mengungkap kampanye jahat yang sedang berlangsung yang menargetkan pengguna Windows yang menggunakan paket palsu yang diunggah ke repositori npm dan Python Package Index (PyPI) dengan tujuan akhir menyebarkan malware pencuri sumber terbuka yang dikenal sebagai Blank-Grabber dan Skuld Stealer.
Perusahaan, yang mendeteksi serangan rantai pasokan bulan lalu, sedang melacak kelompok ancaman dengan nama MUT-8694 (di mana MUT berarti “ancaman misterius yang tidak diatribusikan”), dan menyatakan bahwa ini tumpang tindih dengan kampanye yang didokumentasikan oleh Socket awal bulan ini sebagai bertujuan untuk menginfeksi pengguna Roblox dengan malware yang sama.
Sebanyak 18 dan 39 paket unik palsu telah diunggah ke npm dan PyPI, dengan perpustakaan mencoba untuk menyamar sebagai paket yang sah melalui penggunaan teknik salah ketik.
“Penggunaan sejumlah paket dan keterlibatan beberapa pengguna jahat menunjukkan bahwa MUT-8694 gigih dalam upaya mereka untuk menyusupi pengembang,” kata peneliti Datadog. “Bertentangan dengan ekosistem PyPI, sebagian besar paket npm merujuk pada Roblox, sebuah platform pembuatan game online, yang menunjukkan bahwa pelaku ancaman secara khusus menargetkan pengembang Roblox.”