LWA-2026-7393 MAL-2026-12245 ↗ confirmed malware

tinkoff-pfp-atom-desktop-carousel@20.8.8

Malicious code in tinkoff-pfp-atom-desktop-carousel (npm)

T1195.002 · Compromise Software Supply ChainT1059.007 · JavaScriptT1059 · Command and Scripting InterpreterT1027.013 · Encrypted/Encoded FileT1564.001 · Hidden Files and DirectoriesT1082 · System Information DiscoveryT1071.001 · Web ProtocolsT1572 · Protocol TunnelingT1105 · Ingress Tool Transfer

Analysis

tinkoff-pfp-atom-desktop-carousel@20.8.8 is a trojanized package that downloads and executes a second-stage binary payload. Upon being required, _loader.js determines the victim's platform (Linux x64/arm64, macOS, Windows), then attempts to fetch a platform-specific binary from a rotating set of Cloudflare Workers C2 endpoints (oob-worker[.]cf99-9b3[.]workers[.]dev, oob-worker[.]cf100-416[.]workers[.]dev, oob-worker[.]cf101-adf[.]workers[.]dev, oob-worker[.]cf102-baf[.]workers[.]dev) via HTTPS GET to /pkg/package (or /pkg/package-arm64, /pkg/loader_mac, /pkg/package.exe). If HTTP fails, it falls back to a DNS TXT-based payload delivery channel via c[.]tin[.]dl[.]well1[.]site, which serves chunked base64-encoded data. The downloaded binary is written to /var/tmp/.cache_<hex> (Linux/macOS) or %TEMP%\dotnet_diag_<hex>.exe (Windows) and executed as a detached background process (cmd.exe /c start /b or /bin/sh -c ... &) with stdio discarded. A cache marker at /tmp/.analytics_state or %TEMP%\analytics_state prevents re-execution within ~20 seconds. The package contains a decoy index.js exporting a dummy class and an 81KB fake analytics SDK (lib/telemetry.js) that is never invoked.

analyzed by
Leitwacht
first seen
Aug 2, 2026, 10:14 AM
analyzed
Aug 2, 2026, 10:16 AM

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.