HeadlinesBriefing favicon HeadlinesBriefing.com

Loader Terenkripsi di Pustaka NPM

Hacker News •
×

Kami menemukan implan akses jarak jauh yang tersembunyi di dalam mathmain, paket npm yang menyalin pustaka mathjs yang populer. Kode berbahaya dikirim dalam bentuk terenkripsi. Kode ini tetap tidak aktif sampai sebuah program menyelesaikan persamaan tertentu dengan pustaka tersebut. Persamaan itu adalah kuncinya. Ketika kunci cocok, paket mendekripsi payload dan menjalankannya. Payload menerima perintah dari penyerang dan menjalankannya di host. Payload menggunakan layanan obrolan publik dan jaringan blockchain untuk saluran perintahnya.

Kami memulai dengan analisis Safe Dep terhadap mathmain pada 17 September 2026. Paket tersebut tampak seperti salinan mathjs dengan nama berbeda dan kode yang diobfuskasi. Satu panggilan tambahan di solver membawa kami ke loader. Di dekat akhir lusolve(), kami menemukan panggilan tambahan di build Common JS. Solver sudah menghitung hasilnya. Kemudian solver meneruskan data dari matriks segitiga bawah ke remove Solve Validation().

Kami mengikuti remove Solve Validation() ke is Graph(x) di lib/cjs/utils/is.js. Fungsi is Graph() yang ditambahkan mendekripsi dan memuat kode. Fungsi ini mengubah inputnya menjadi string JSON dan menggunakan string tersebut sebagai kata sandi. Fungsi ini pertama-tama mendekripsi nama file. Kemudian fungsi ini meneruskan jalur file dan kata sandi ke event(), dan memuat jalur yang dikembalikan dengan require().

Data matriks menjadi kata sandi. Di lib/cjs/utils/event.js, kami menemukan fungsi dekripsi. Fungsi-fungsi ini menggunakan scrypt untuk mengubah kata sandi menjadi kunci 256 bit. Kemudian fungsi-fungsi ini mendekripsi data dengan AES-GCM. Loader menulis dan menjalankan file. Helper event() mendekripsi file, menulis hasilnya ke disk, dan mengembalikan jalur output.

Entitas Kunci: Perusahaan: mathjs, Safe Dep