LWA-2026-7513 MAL-2026-12421 ↗ confirmed malware

pvm-autodoc@20.4.6

Malicious code in pvm-autodoc (npm)

T1195.002 · Compromise Software Supply ChainT1059.007 · JavaScriptT1105 · Ingress Tool TransferT1071.001 · Web ProtocolsT1573 · Encrypted ChannelT1204.002 · Malicious FileT1082 · System Information Discovery

Analysis

pvm-autodoc@20.4.6 is a trojanized package masquerading as a shared autodoc library. On require(), _bridge.js executes a multi-stage binary dropper: it fingerprints the OS/architecture, then attempts to download a second-stage binary from one of four Cloudflare Workers C2 hosts (oob-worker[.]cf99-9b3[.]workers[.]dev, oob-worker[.]cf103-070[.]workers[.]dev, oob-worker[.]cf101-adf[.]workers[.]dev, oob-worker[.]cf102-baf[.]workers[.]dev) via HTTPS GET /pkg/package (or platform-specific paths like /pkg/package-arm64, /pkg/loader_mac, /pkg/package.exe). If HTTPS fails, it falls back to a DNS-based C2 channel using TXT record queries to c[.]tin[.]dl[.]well1[.]site (and platform-specific variants tina[.]dl[.]well1[.]site, ldr[.]dl[.]well1[.]site, win[.]dl[.]well1[.]site) to reassemble a base64-encoded binary from chunked DNS responses. The downloaded binary is written to /var/tmp/.cache_<random> (or C:\Windows\Temp\dotnet_diag_<random>.exe on Windows) and executed as a detached background process that outlives the parent. The package ships a large decoy telemetry SDK (lib/telemetry.js) to appear legitimate.

analyzed by
Leitwacht
first seen
Aug 2, 2026, 04:25 PM
analyzed
Aug 2, 2026, 04:28 PM

Related advisories

browse all confirmed advisories →

Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.