Headline News
Breaking Security Alert

Insiden Supply Chain NPM Terbaru:
Axios Disusupi RAT, Puluhan Juta Developer Terancam

Laporan Investigasi Keamanan Siber Lengkap: Analisis Forensik & Threat Intelligence pada Insiden Supply Chain Attack Paket Axios

Severity: CRITICAL
Tanggal: 31 Maret 2026
Exposure: ~3 Jam
2
Versi Berbahaya
80-100 juta
Unduhan/Minggu
3
Platform Terdampak
1

Executive Summary

Ringkasan Insiden

Pada 31 Maret 2026, akun npm milik maintainer utama Axios diduga dibajak, lalu digunakan untuk menerbitkan dua versi berbahaya dari library Axios. Paket berbahaya itu menyisipkan dependency tersembunyi [email protected], yang menjalankan postinstall script untuk mengunduh dan mengeksekusi Remote Access Trojan (RAT) lintas platform pada Windows, macOS, dan Linux.

Dampak Utama

  • Compromised npm maintainer account
  • Malicious dependency injection via postinstall
  • Cross-platform RAT deployment (Win/Mac/Linux)
  • Potential credential theft & system compromise

Severity Assessment

CRITICAL

Attacker tidak mengubah source code Axios secara langsung, melainkan menyisipkan dependency berbahaya. Teknik ini bypasses static analysis dan memanfaatkan trust model npm ecosystem yang already trusted.

Mengapa Insiden Ini Signifikan?

80-100 juta unduhan/minggu

Axios adalah salah satu paket paling critical di ekosistem npm

CI/CD Blast Radius

Automated pipelines dapat menyebarkan malware ke production

Transitive Dependency

plain-crypto-js tidak langsung terlihat di axios package.json

Stealth Execution

Lifecycle hook exploitation tanpa modifikasi source code

2

Background & Context

Apa Itu Axios?

Axios adalah library HTTP client berbasis JavaScript yang digunakan untuk melakukan request HTTP/HTTPS baik di browser maupun di lingkungan Node.js. Library ini menjadi standar de facto dalam ekosistem JavaScript modern karena API yang sederhana, fleksibel, dan kompatibel lintas environment.

Statistik Penggunaan

~80–100 juta unduhan per minggu di npm

Axios termasuk salah satu paket paling banyak digunakan di seluruh ekosistem JavaScript

Spektrum Penggunaan Axios:

Web Applications

Frontend SPA (React, Vue, Angular)

Backend APIs

Node.js services, microservices

Mobile Apps

React Native applications

Serverless

AWS Lambda, Azure Functions

CI/CD Pipelines

Build & deployment automation

Workstations

Developer machines

Mengapa Supply Chain Attack di npm Sangat Berbahaya?

Trust Model yang Rentan

  • Developer trust paket populer tanpa verification
  • npm automatically resolves transitive dependencies
  • Lifecycle scripts (postinstall, etc.) execute with user permissions

Blast Radius yang Luas

  • Single compromised package affects thousands of projects
  • CI/CD pipelines auto-deploy malware to production
  • Developer workstations exposed to credential theft

Analisis: Insiden ini memanfaatkan trust yang sudah terbangun selama bertahun-tahun pada ekosistem npm, membuat detection menjadi sangat challenging karena tidak ada perubahan visible pada package source code.

3

Incident Overview

Paket Terdampak

[email protected] MALICIOUS

Primary malicious release

[email protected] MALICIOUS

Secondary malicious release (legacy version)

Detail Serangan

Dependency Berbahaya

[email protected]

Jenis Serangan

Maintainer Account Takeover

Payload

Cross-Platform RAT (Windows, macOS, Linux)

Timeline Insiden (UTC)

1
00:21 UTC Initial Attack

Publish [email protected] dengan malicious dependency

2
~00:27 UTC Detection

Deteksi awal oleh security researcher / automated monitoring

3
01:00 UTC Secondary Attack

Publish [email protected] - versi legacy juga disusupi

4
03:29 UTC Mitigation

npm menghapus paket berbahaya dari registry

Durasi Exposure

~3 jam 8 menit

Window kritis antara publish pertama hingga removal

Implikasi CI/CD

Automated builds yang melakukan npm install dalam window ini berpotensi menyebarkan malware

4

Attack Chain Analysis

Analisis sistematis setiap tahap serangan dengan kerangka kerja MITRE ATT&CK untuk supply chain compromise.

Attack Flow Diagram

ATTACKER

Compromise npm Account

Maintainer credentials stolen

T1078

Publish Malicious Versions

T1195

Inject Dependency

[email protected] with malicious postinstall

npm install axios

Victim downloads malicious package

postinstall → setup.js

Base64+XOR obfuscation → C2 connection

T1543

C2 Server

sfrclak.com:8000

T1071 T1105

Cross-Platform RAT

Windows / macOS / Linux

macOS Windows Linux

FULL SYSTEM COMPROMISE

Credential Theft

Data Exfil

Lateral Move

T1078 Valid Accounts

Initial Access

Compromised npm maintainer account credentials

T1195 Supply Chain Compromise

Persistence

Malicious package version publication

T1543 Create/Modify Process

Execution

npm lifecycle postinstall hook abuse

T1071 Application Layer Protocol

C2 Communication

HTTP beaconing to sfrclak.com:8000

T1105 Ingress Tool Transfer

Payload Delivery

Cross-platform RAT download & execution

T1059 Command & Scripting

Impact

Remote code execution, credential theft

Catatan Analitis

Initial Access Layer

Terjadi di layer supply chain (bukan endpoint). Attacker mengkompromi account maintainer, bukan mengeksploitasi vulnerability pada sistem korban.

Execution Vector

NPM lifecycle hook (postinstall) dimanfaatkan untuk eksekusi otomatis tanpa user interaction.

Defense Bypass

Tidak ada perubahan pada source code Axios → sangat sulit dideteksi dengan static analysis biasa.

Blast Radius Tinggi

Transitive dependency + CI/CD automation = potensi penyebaran malware sangat luas dalam waktu singkat.

5

Technical Deep Dive

6.1 Dependency Injection Analysis

Mengapa Attacker Tidak Ubah Source Code?

  • Source code Axios yang sebenarnya tetap "clean"
  • Static analysis pada kode utama tidak akan mendeteksi malware
  • Maintainer reputation tetap terjaga secara superficial
  • Payload tersembunyi di transitive dependency

Keuntungan Teknik Dependency Injection

  • Tidak terlihat di top-level package.json axios
  • Dynamic resolution oleh npm install
  • Minimal footprint di version control history
  • Harder to audit - memerlukan lockfile analysis

6.2 Dropper Analysis

Obfuscation

  • • Reversed Base64 encoding
  • • XOR cipher dengan key OrDeR_7077
  • • Multi-stage deobfuscation

OS Detection

  • • Platform-specific payloads
  • • macOS detection logic
  • • Windows/Linux targeting

C2 Connection

  • • Domain: sfrclak.com
  • • Port: 8000
  • • HTTP-based beaconing

Dropper Execution Flow (setup.js):

1. Decode reversed Base64 payload
2. XOR decode dengan key "OrDeR_7077"
3. Detect OS (darwin/win32/linux)
4. Connect to C2: sfrclak.com:8000
5. Download platform-specific RAT
6. Execute payload
7. Delete dropper evidence

6.3 Payload Analysis per Operating System

macOS

File Location

/Library/Caches/com.apple.act.mond

Execution Method

LaunchAgent persistence, LaunchDaemon

C2 Endpoint

/product0

Kemampuan RAT:

  • • Keylogging
  • • Screen capture
  • • Credential harvesting
Windows

File Locations

%PROGRAMDATA%\wt.exe %TEMP%\6202033.vbs %TEMP%\6202033.ps1

Execution Method

Scheduled task, Registry Run key

C2 Endpoint

/product1

Kemampuan RAT:

  • • PowerShell execution
  • • WMI exploitation
  • • AD credential theft
Linux

File Location

/tmp/ld.py

Execution Method

Cron job, systemd service

C2 Endpoint

/product2

Kemampuan RAT:

  • • SSH key extraction
  • • Environment variable theft
  • • Container escape potential
6

Indicators of Compromise (IOCs)

Kompilasi indikator compromise untuk keperluan detection, hunting, dan forensic analysis.

1. Hash Paket Berbahaya

Package Version SHA1 Hash
axios 1.14.1 2553649f232204966871cea80a5d0d6adc700ca
axios 0.30.4 d6f3f62fd3b9f5432f5782b62d8cfd5247d5ee71
plain-crypto-js 4.2.1 07d889e2dadce6f3910dcbc253317d28ca61c766

2. C2 dan Indikator Jaringan

Domain C2

sfrclak.com

IP C2

142.11.206.73

Full URL

http://sfrclak.com:8000/6202033

C2 Port

8000

Beacon Endpoints:

/product0

macOS

/product1

Windows

/product2

Linux

3. Indikator Filesystem

macOS

/Library/Caches/com.apple.act.mond

Windows

%PROGRAMDATA%\wt.exe

Windows Temp

%TEMP%\6202033.vbs, %TEMP%\6202033.ps1

Linux

/tmp/ld.py

Dropper (All Platforms)

node_modules/plain-crypto-js/setup.js

Cara Cek Apakah Terdampak

Lockfile Check:

grep -E '"axios"' package-lock.json | grep -E '1\.14\.1|0\.30\.4'

Dependency Check:

npm ls plain-crypto-js

Filesystem Check (macOS/Linux):

find / -name "setup.js" -path "*/plain-crypto-js/*" 2>/dev/null

Filesystem Check (Windows PowerShell):

Get-ChildItem -Path C:\ -Recurse -Filter "setup.js" -ErrorAction SilentlyContinue | Where-Object {$_.FullName -like "*plain-crypto-js*"}
7

Investigation Methodology

1. Dependency Analysis

  • Audit package-lock.json untuk versi axios
  • Cari axios versi 1.14.1 atau 0.30.4
  • Deteksi plain-crypto-js di dependency tree
  • Verifikasi hash dengan IOC list

2. Runtime Analysis

  • Cek timestamp npm install
  • Identifikasi apakah install terjadi dalam window 00:21-03:29 UTC
  • Review npm install logs
  • Check ~/.npm/_logs untuk timestamps

3. Host Forensics

  • Search filesystem untuk IOC artifacts
  • Analisis node_modules/plain-crypto-js
  • Process memory analysis
  • Registry/persistence mechanism check

4. Network Analysis

  • Check DNS logs untuk sfrclak.com
  • Review outbound connections ke 142.11.206.73:8000
  • Firewall logs analysis
  • Proxy/IDS/IPS alerts review

5. CI/CD Analysis

Critical Questions:

  • Apakah build terjadi dalam window exposure?
  • Apakah menggunakan npm install atau npm ci?
  • Apakah ignore-scripts diaktifkan?

Artifacts to Review:

  • Pipeline build logs
  • Docker/OCI container logs
  • Artifact registry (Docker images, npm packages)
8

Risk Assessment & Impact Analysis

Kategori Risiko

HIGH RISK

Terdampak + Install dalam Window

Sistem yang melakukan npm install axios dalam window 00:21-03:29 UTC dan tidak menggunakan mitigation.

Credential Exposure: CRITICAL
RCE Potential: YES
Lateral Movement: POSSIBLE
MEDIUM RISK

Terdampak + Mitigation Terlambat

Sistem yang install dalam window tapi dengan --ignore-scripts atau environment variables protection.

Credential Exposure: LOW
RCE Potential: MITIGATED
Investigation: REQUIRED
LOW RISK

Tidak Terdampak

Sistem yang menggunakan npm ci dengan lockfile, atau install di luar window exposure, atau sudah cleanup.

Credential Exposure: NONE
RCE Potential: NONE
Action: MONITOR

Impact Analysis

Remote Code Execution (RCE)

RAT dapat mengeksekusi arbitrary commands pada sistem korban dengan privileges user yang melakukan npm install.

Credential Theft

Attacker dapat mencuri API keys, tokens, SSH keys, dan credentials lainnya yang tersimpan di environment atau file system.

Lateral Movement Potential

Compromised developer workstation dapat menjadi pivot point untuk menyerang internal infrastructure, repositori, dan cloud environments.

Supply Chain Blast Radius

Compromised CI/CD pipelines dapat menyebarkan malware ke production artifacts, affecting end-users secara langsung.

Data Exfiltration

RAT dapat mengakses dan exfiltrate sensitive data termasuk source code, customer data, dan business intelligence.

Persistence

Malware dapat bertahan di sistem bahkan setelah cleanup awal, dengan mekanisme persistence pada autostart locations.

9

Remediation & Response

Jika TIDAK Terdampak

1 Pin Dependency Versions

Tambahkan exact version di package.json:

"axios": "1.14.0"

2 Gunakan npm ci

Selalu gunakan npm ci bukan npm install untuk deterministic builds dari lockfile.

3 Enable ignore-scripts

Tambahkan di package.json:

"npm": {"ignore-scripts": true}

Atau gunakan: npm ci --ignore-scripts

4 Audit Dependencies

Jalankan npm audit secara regular dan monitor transitive dependencies.

Jika TERDAMPAK

1 Isolasi Sistem

Segera disconnect dari network jika RCE suspected. Jangan matikan sistem untuk forensic preservation.

2 Rotate Credentials

Segera rotate semua credentials yang mungkin terekspos: API keys, tokens, SSH keys, passwords.

3 Rebuild Environment

Hapus node_modules dan reinstall:

rm -rf node_modules && npm ci

4 Forensic Analysis

Capture memory dumps, disk images, dan network logs sebelum cleanup untuk incident investigation.

5 Audit Logs

Review access logs, CI/CD pipelines, dan artifact registries untuk identifikasi scope compromise.

Lessons Learned

Trust Model npm

Ekosistem npm berbasis trust tanpa verifikasi otomatis. Package popularity bukan indikasi security. Selalu verify dependencies.

Pentingnya Lockfile

package-lock.json adalah defense line critical. Commit lockfile dan gunakan npm ci untuk reproducible builds.

Lifecycle Script Risk

postinstall, preinstall, dll. berjalan dengan elevated privileges. Pertimbangkan --ignore-scripts di CI/CD.

Monitor Build Environment

Implementasikan monitoring untuk suspicious network connections, unauthorized script execution, dan anomalous process activity.

Butuh Bantuan Profesional?

Tim CSIRT dan Security专家 kami siap membantu Anda melakukan audit, forensic analysis, dan incident response untuk insiden ini.

Response time: ≤ 4 jam untuk kasus emergency

10

Conclusion

Insiden supply chain attack npm axios ini menunjukkan evolusi signifikan dalam tactics, techniques, dan procedures (TTPs) attacker yang menargetkan software supply chain. Berbeda dari serangan sebelumnya yang mengubah source code secara visible, pendekatan dependency injection yang digunakan di sini merupakan stealth technique yang sangat efektif.

Karakteristik Serangan:

  • Precision targeting - Kompromi maintainer account yang memiliki trust tinggi
  • Minimal footprint - Tidak ada modifikasi source code utama axios
  • Cross-platform payload - RAT dapat beroperasi di Windows, macOS, dan Linux
  • Defense evasion - Bypasses static analysis dan standard security scanning

Insiden ini menegaskan bahwa supply chain security memerlukan pendekatan berlapis. Organisasi harus mengimplementasikan:

Dependency Pinning

Gunakan exact versions dan lockfiles

Continuous Monitoring

Monitor dependency trees secara real-time

Script Validation

Audit dan sandbox lifecycle scripts

MFA Enforcement

Wajib MFA untuk package registry accounts

Implikasi Jangka Panjang

Insiden ini kemungkinan akan memicu diskusi tentang reformasi trust model di npm ecosystem. Browser-like security model dengan capability-based permissions untuk packages, SBOM (Software Bill of Materials) mandates, dan improved maintainer account security mungkin akan menjadi standar industry dalam waktu dekat.

Related Topics: axios npm malware npm supply chain attack axios compromised remote access trojan npm dependency attack npm security