Skip to content
OpenAdvisories
Malicious MAL-2026-13548

devplatform-stylelint-config

npm package · versions 35.7.4

Reported Aug 7, 2026 · Updated Aug 7, 2026

If this package is installed

Remove it, treat the machine (or CI runner) as compromised, and rotate every secret, token and key it could access — from a different, clean machine.

Details

Source: amazon-inspector (0d5c417e542790e2e91860f8383960eecead75556b747c0fdc91227c3228f514)
The package is published as 'devplatform-stylelint-config' with description 'environment config reader' and exposes a trivial ConfigLoader from index.js, but index.js also require()s./setup.js which runs at library load. setup.js assembles Cloudflare Workers hostnames (oob-worker.cf99-9b3.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf103-070.workers.dev) and dl.wel1.ru subdomains (sdk./ext./pkg./net.) from array joins to defeat literal string matching, with a DNS-TXT chunked base64 fallback channel (c.<domain> count plus <i>.<domain> chunks via resolveTxt). It downloads a platform-specific binary over HTTPS, writes it to a hidden temp path (/tmp/.cache_<hex> or %TEMP%/dotnet_diag_<hex>.exe), chmods 0755, and detaches it via cp.spawn('/bin/sh', ['-c', fp+' &'], {detached:true}).unref() (with a cmd equivalent on Windows). No hash or signature verification is performed. Cover-story naming ('analytics_state', a DISABLE_TELEMETRY gate) and the package name/description mismatch conceal the payload.