- Di registri NPM, lebih dari 1.000 komponen terinfeksi dengan pola yang sama dalam hitungan jam, lalu versi baru yang berisi kode berbahaya didistribusikan
- Paket berbahaya menyamar sebagai skrip instalasi runtime Bun dengan menambahkan
setup_bun.js dan bun_environment.js yang diobfuscate; saat dijalankan, ia menggunakan TruffleHog untuk mencuri kredensial lokal
- Informasi sensitif yang dikumpulkan, seperti token AWS/GCP/Azure·GitHub·NPM, dikirim keluar melalui runner GitHub Action bernama
SHA1HULUD
- Skrip berbahaya secara otomatis menjalankan
npm publish untuk melakukan replikasi diri berbentuk worm, yang pada akhirnya menginfeksi lebih dari 27.000 repositori GitHub
- Kasus ini dinilai kembali menyoroti ancaman keamanan rantai pasok di seluruh ekosistem open source
Ringkasan serangan
- Pada 24 November 2025, HelixGuard mendeteksi lebih dari 1.000 paket di registri NPM yang terinfeksi dengan teknik yang sama dalam beberapa jam
- Versi baru tersebut menyamar seolah-olah menambahkan runtime Bun dan menyertakan skrip
preinstall: node setup_bun.js
- File
bun_environment.js yang didistribusikan bersama merupakan kode berbahaya yang diobfuscate, yang saat dijalankan akan mengunduh dan mengeksekusi TruffleHog
- TruffleHog memindai dan mencuri token NPM, kredensial AWS/GCP/Azure, variabel lingkungan, dan lainnya dari lingkungan lokal
- Informasi yang dicuri dieksfiltrasi dengan membuat runner GitHub Action
SHA1HULUD, lalu dikirim keluar melalui repositori GitHub dengan deskripsi Sha1-Hulud: The Second Coming.
- HelixGuard mengindikasikan bahwa serangan ini kemungkinan dilakukan oleh pelaku yang sama dengan insiden “Shai-Hulud” pada September 2025
Analisis cara kerja malware
- Dari analisis terhadap paket
@asyncapi/specs, versi yang dipublikasikan ke NPM terbukti telah terinfeksi, sementara repositori sumber asli di GitHub tetap aman
- Penyerang memodifikasi
package.json untuk menambahkan setup_bun.js, lalu mengatur agar skrip tersebut memanggil bun_environment.js
bun_environment.js adalah file JavaScript yang sangat diobfuscate dengan ukuran lebih dari 10MB, dengan fungsi utama sebagai berikut
- Mengumpulkan kredensial cloud dan token dari variabel lingkungan
- Memindai secret key menggunakan TruffleHog
- Mengeksfiltrasi data melalui GitHub Actions
- Selain itu,
package.json juga dimodifikasi untuk menyisipkan kode infeksi, lalu npm publish dijalankan otomatis guna melakukan penyebaran berbentuk worm
Infeksi GitHub dan eksfiltrasi data
- Skrip berbahaya membuat file
.github/workflows/formatter_123456789.yml dan mendaftarkan runner SHA1HULUD
- Workflow tersebut mengemas secret repositori ke dalam file
actionsSecrets.json yang dienkode Base64 ganda
- Setelah itu, data diunggah dengan membuat repositori GitHub bernama acak yang memiliki deskripsi
Sha1-Hulud: The Second Coming.
- HelixGuard mengonfirmasi bahwa lebih dari 27.000 repositori GitHub telah terinfeksi
- Informasi rahasia yang dicuri mencakup berbagai kredensial layanan seperti
AWS_ACCESS_KEY_ID, SLACK_WEBHOOK_URL, CODECOV_TOKEN, WEBFLOW_TOKEN, dan lainnya
Daftar paket yang terinfeksi
- HelixGuard melaporkan bahwa ratusan paket NPM telah terinfeksi
- Contohnya mencakup paket dari organisasi besar seperti
@asyncapi, @ensdomains, @posthog, @zapier, @postman, @voiceflow
- Tiap paket memiliki banyak versi yang terinfeksi, misalnya
@asyncapi/specs@6.8.2, @postman/csv-parse@4.0.5
- Sebagian besar paket yang terinfeksi menyamar sebagai proyek open source normal, dengan kode berbahaya disisipkan dalam proses distribusi otomatis
Implikasi keamanan
- Serangan ini merupakan contoh infeksi skala besar pada ekosistem open source dengan memanfaatkan kelemahan keamanan rantai pasok
- Ini menunjukkan perlunya penguatan pengelolaan keamanan di seluruh infrastruktur pengembangan, termasuk NPM, GitHub, dan kredensial cloud
- HelixGuard menyarankan untuk segera menghentikan instalasi paket yang terinfeksi dan segera mencabut token serta kredensial terkait
Belum ada komentar.