LWA-2026-10772 MAL-2026-13554 ↗ confirmed malware

dolyame-ui-buttonstore@35.8.1

Malicious code in dolyame-ui-buttonstore (npm)

T1195.002 · Compromise Software Supply ChainT1059.007 · JavaScriptT1105 · Ingress Tool TransferT1071.001 · Web ProtocolsT1102 · Web ServiceT1573 · Encrypted ChannelT1082 · System Information Discovery

Analysis

dolyame-ui-buttonstore@35.8.1 masquerades as "Common TypeScript definitions" but its index.js immediately requires setup.js, a platform-aware dropper. On load it fingerprints os.platform()/os.arch(), then downloads a platform-specific binary (linux_x64, linux_arm64, darwin, or win32) over HTTPS from a rotating set of Cloudflare Workers 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, paths /pkg/package, /pkg/package-arm64, /pkg/loader_mac, /pkg/package.exe). If the HTTP fetch fails it falls back to a DNS-tunnel resolver that reassembles the payload from base64 TXT records under c[.]sdk[.]dl[.]wel1[.]ru. The downloaded binary is written to /tmp/.cache_<hex> (or %TEMP%\dotnet_diag_<hex>.exe on Windows), chmod 755, and executed detached via /bin/sh -c or cmd.exe /c start /b, so it outlives the parent process. A filesystem timestamp in /tmp/.analytics_state (or %TEMP%\analytics_state) throttles re-downloads to once per ~6.5 hours. The package ships no actual TypeScript definitions and performs no legitimate function.

analyzed by
Leitwacht
first seen
Aug 7, 2026, 11:14 AM
analyzed
Aug 7, 2026, 11:15 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.