OpenSSF/OSV advisory MAL-2026-13505 confirms this npm version as malicious. On require() of the package's main entry, dolyame-ui-iconloaderhoc@35.8.1 executes two dropper paths that fetch platform-specific binaries from hardcoded Cloudflare workers.dev endpoints (oob-worker.cf103-070.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev) with a DNS-TXT fallback channel via subdomains of dl.wel1.ru, write the bytes to /var/tmp/.cache_<hex> or...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in dolyame-ui-iconloaderhoc (npm)
Details
On require() of the package's main entry, dolyame-ui-iconloaderhoc@35.8.1 executes two dropper paths that fetch platform-specific binaries from hardcoded Cloudflare workers.dev endpoints (oob-worker.cf103-070.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev) with a DNS-TXT fallback channel via subdomains of dl.wel1.ru, write the bytes to /var/tmp/.cache_<hex> or %TEMP%\dotnet_diag_<hex>.exe, chmod them to 0755, and spawn them detached via /bin/sh -c or cmd.exe. Both _compat.js and lib/telemetry.js implement the fetch-write-chmod-spawn chain; lib/telemetry.js additionally assembles the payload from base64 chunks. Sinks and hostnames are constructed via array.join('') string-splitting (e.g. ['sdk.dl.','wel1.','ru'].join(''), require('child_' + 'process'), fs['chmod'+'Sync']) to defeat static scanners, while comments frame the behavior as analytics/telemetry. The delivered bytes are opaque, unpinned, and unverified, and the workers.dev / wel1.ru destinations are anonymous infrastructure unrelated to any documented publisher.
Decision reason
OpenSSF Malicious Packages via OSV confirms dolyame-ui-iconloaderhoc@35.8.1 as malicious (MAL-2026-13505): Malicious code in dolyame-ui-iconloaderhoc (npm)