pvm-autodoc@20.4.6
Malicious code in pvm-autodoc (npm)
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
- tinkoff-statist-browser-typed-client-jumptaxi.feature.contacts@20.6.6
- statist-browser-typed-client-ddp.mentat.ui.web@20.9.4
- fb-hr-sites--boxified-form-meetup-subcribe@20.6.4
- scandoc-scandoc-core@20.8.5
- tinkoff-pwa-confac-types@20.7.7
- pfp-block-mobile-steps@20.9.3
- statist-browser-typed-client-eventea.projects.pfpacquiring@20.5.8
- tinkoff-statist-browser-typed-client-automlplatform.nlppl.classica@20.4.1
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.