PoinTru.com – Kabar mengejutkan baru saja mengguncang ekosistem pengembang web saat sejumlah pustaka dependensi JavaScript populer dilaporkan terinfeksi malware berbahaya. Serangan berantai atau supply chain attack ini menyusup melalui akun pengelola pustaka yang berhasil dibajak peretas, lalu menyebarkan kode jahat ke ribuan proyek turunan tanpa disadari pemiliknya.
Bagi saya yang setiap hari mengelola berbagai skrip automasi kerja dan integrasi API untuk operasional bisnis, insiden seperti ini adalah alarm bahaya yang nyata. Pasalnya, banyak proyek modern yang mengandalkan dependensi pihak ketiga tanpa mengunci versi secara ketat, sehingga proses instalasi rutin bisa langsung menarik malware ke dalam sistem lokal maupun server produksi.
Daftar Pustaka Terdampak dan Jalur Penyusupan Malware
Serangan ini bermula dari pembajakan akun pengelola pada paket populer yaitu keyv dan cacheable. Dua paket ini merupakan pustaka manajemen cache yang sangat sering dipasang sebagai fondasi pada pustaka yang jauh lebih besar, misalnya Got dan Cache Manager. Ketika akun pustaka utama tersebut disusupi, peretas langsung mengunggah versi paket yang sudah disuntik kode jahat ke repositori publik npm.
Jika proyek Anda tidak mengunci file dependensi menggunakan package lock json, perintah instalasi standar akan secara otomatis mengambil versi terbaru yang berisi malware. Begitu proses instalasi berjalan, skrip jahat langsung memicu pre install hook yang bekerja senyap di latar belakang untuk mengunduh runtime Bun sebagai mesin eksekusi tambahan.
| Nama Paket JavaScript | Peran dalam Ekosistem | Status Dampak Serangan |
|---|---|---|
| keyv | Pustaka penyimpanan key value | Akun dibajak dan disuntik file malware |
| cacheable | Pustaka utilitas caching data | Akun dibajak dan menyebarkan skrip jahat |
| Got | Pustaka HTTP request populer | Terdampak secara tidak langsung lewat dependensi |
| Cache Manager | Modul manajemen cache multi store | Terdampak secara tidak langsung lewat dependensi |
Target Data Sensitif dan Modus Operandi Canggih
Begitu malware aktif di mesin pengembang, ia langsung menguras habis berbagai berkas konfigurasi penting. Skrip ini secara otomatis memindai dan menyedot seluruh isi file env yang berisi variabel rahasia, kredensial cloud penyedia layanan seperti AWS, hingga token akses yang tersimpan pada sistem pipeline CI CD runner.
Kejahatan ini dirancang dengan tingkat kelicikan yang tinggi. Agar alamat server penampung data hasil curian tidak mudah dilacak atau dimatikan oleh otoritas keamanan, peretas memanfaatkan smart contract pada jaringan blockchain Ethereum untuk menyembunyikan alamat server pengendali atau command and control.
Tidak berhenti di situ, malware ini juga bertindak sebagai worm penyebar otomatis. Apabila pada sistem komputer Anda ditemukan token npm yang memiliki hak akses publikasi, malware akan langsung menyisipkan kode berbahaya yang sama ke dalam repositori open source lain yang Anda kelola.
- File env lokal dan konfigurasi environment rahasia
- Kredensial cloud AWS, GCP, Azure, dan database connection strings
- Token otentikasi CI CD runner dan GitHub access tokens
- Token akses asisten AI seperti Cursor, OpenAI, dan Claude
- Token akun npm untuk penyebaran infeksi ke proyek publik lainnya
Cara Memeriksa Jejak Infeksi pada Folder Proyek
Untuk memastikan apakah lingkungan kerja Anda sudah disusupi atau masih aman, Anda bisa melakukan inspeksi mandiri ke dalam folder dependensi. Berdasarkan temuan di lapangan, ada berkas janggal tertentu yang menjadi penanda mutlak keberadaan skrip jahat ini.
Buka folder node modules pada proyek Anda, kemudian arahkan pencarian ke dalam folder pustaka keyv atau cacheable utils. Periksa apakah terdapat file bernama Math Symbol js atau math init js di dalamnya. Jika file tersebut muncul di dalam folder proyek Anda, artinya sistem kerja Anda sudah terinfeksi dan perlu penanganan darurat seketika.
Langkah Bersih Total dan Pemulihan Sistem
Jika Anda menemukan indikasi infeksi tersebut, tindakan pembersihan harus dilakukan secara menyeluruh tanpa menunda. Jangan hanya menghapus satu file saja karena skrip mungkin sudah menyebar ke bagian lain dalam dependensi lokal.
Langkah pertama yang saya lakukan saat menangani insiden semacam ini adalah membuang seluruh isi folder node modules dan membersihkan cache npm dari komputer lokal. Eksekusi perintah di terminal untuk memastikan tidak ada sisa paket berbahaya yang tertinggal dalam memori sementara sistem pengembang.
rm -rf node_modules
npm cache clean --force Setelah folder dependensi dibersihkan total, langkah paling penting yang wajib segera Anda lakukan adalah melakukan rotasi seluruh kredensial. Ganti semua API keys, database secret key, token cloud, hingga token asisten AI yang pernah tersimpan di file env komputer Anda, karena ada kemungkinan data tersebut sudah terkirim ke server peretas.
Catatan Sebelum Anda Eksekusi
Kejadian serangan rantai pasok ini menjadi pengingat berharga bagi kita semua yang berkutat dengan ekosistem JavaScript. Kunci selalu berkas package lock json Anda dan hindari menjalankan instalasi paket sembarangan tanpa verifikasi versi yang jelas. Kalau Anda punya temuan lain atau sempat mengalami kendala serupa saat memeriksa dependensi proyek, mari kita diskusikan di kolom komentar agar bisa saling menjaga keamanan alur kerja bersama.
Baca artikel lainnya, cek aja di Sitemap.


Nice share min, ilmunya sangat aplikatif.
Wah baru tahu ada solusi sesimpel ini buat javascript security. Makasih ya min!
Akhirnya nemu panduan npm malware yang runut dan gak bikin bingung.
Min mau tanya, kalo buat pemula yang baru pertama kali nyoba Daftar Package JavaScript, step awalnya mending mulai dari mana dulu ya?
Sama kak @Bagus, awalnya saya juga bingung, tapi pas dicoba pelan-pelan ternyata gampang banget dipraktekin.
@Bagus pengalaman saya kemarin butuh sekitar 15-20 menitan gan, yang penting ikuti urutannya jangan ada yang diloncat.
@Bagus aman kok kak, tapi tetep sangat disaranin backup dulu buat jaga-jaga, biar lebih tenang ngerjainnya.
Min mau tanya, kalo buat pemula yang baru pertama kali nyoba Daftar Package JavaScript, step awalnya mending mulai dari mana dulu ya?
Gak butuh biaya tambahan kok kak @Anton, semuanya bisa pake opsi bawaan atau yang gratisan.
Setau saya aman banget gan @Anton, saya udah jalan hampir sebulan setelah coba trik Hack ini dan gak ada kendala sama sekali.
Bagus pembahasannya, sudut pandangnya realistis dan gampang dipahami sama orang awam sekalipun.
Penasaran sama bagian Daftar tadi, mending pake opsi yang pertama atau kedua ya min buat hasil yang lebih optimal?
Setau saya aman banget gan @Aditya, saya udah jalan hampir sebulan setelah coba trik Package ini dan gak ada kendala sama sekali.
@Aditya mending pake opsi pertama dulu kak, jauh lebih ramah buat pemula dan langkahnya lebih simpel.
Bagus pembahasannya, sudut pandangnya realistis dan gampang dipahami sama orang awam sekalipun.
Bagus pembahasannya, sudut pandangnya realistis dan gampang dipahami sama orang awam sekalipun.
Bookmark dulu gan, ntar malem pas santai baru mau dipelajari detail.
Mau tanya min, kalo datanya belum di-backup dulu aman langsung dieksekusi gak ya? Makasih sebelumnya.
Setau saya aman banget gan @Citra, saya udah jalan hampir sebulan setelah coba trik Hack ini dan gak ada kendala sama sekali.
Makasih infonya kak @Desi, sangat ngebantu buat yang masih pemula kayak saya.
@Citra kalo error biasanya tinggal di-restart atau diulang dari step sebelumnya gan, gak bakal ngerusak sistem kok.
Awalnya sempet skeptis pas baca judulnya, tapi pas dipraktekin step by step ternyata hasilnya memuaskan.
Wah baru tahu ada solusi sesimpel ini buat Listicle Praktis. Makasih ya min!
Izin tanya min, ini aman gak ya kalo diterapin di device yang speknya standar? Takut nge-drop performanya.
@Teguh coba periksa lagi koneksi sama settingan awalnya gan, kemarin saya juga sempet beda ternyata ada satu opsi yang belum diaktifin.
@Teguh kalo error biasanya tinggal di-restart atau diulang dari step sebelumnya gan, gak bakal ngerusak sistem kok.
Terima kasih banyak infonya kak, ngebantu banget buat tugas saya.
Keren ulasannya, langsung saya share ke grup wa temen-temen.
Awalnya sempet skeptis pas baca judulnya, tapi pas dipraktekin step by step ternyata hasilnya memuaskan.