Malicious code in dolyame-ui-lazyrender (npm)
The npm package dolyame-ui-lazyrender contained malicious code that downloads and executes platform-specific binaries from attacker-controlled domains upon require. The package employed obfuscation techniques to evade detection and included redundant dropper implementations.
- Disclosed
- Last updated
- Blast radius
- Any npm consumer of dolyame-ui-lazyrender
- Ecosystems
- Attack vectors
- Affected entities
- dolyame-ui-lazyrendernpm package containing malicious code
The npm package dolyame-ui-lazyrender was found to contain malicious code designed to download and execute arbitrary binaries. Upon require, the package's _helpers.js module selects a platform-specific binary path and fetches bytes over HTTPS from attacker-controlled Cloudflare Workers domains (oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf100-416.workers.dev) with DNS-based fallback to Russian domains (sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, net.dl.wel1.ru).
The malicious payload is written to a hidden temporary file, given executable permissions (chmod 0755), and executed via shell commands (/bin/sh -c on Unix-like systems or cmd.exe /c start /b on Windows). No hash or signature verification is performed on the downloaded binaries.
A second dropper implementation exists in lib/telemetry.js, which reconstructs dangerous APIs from concatenated string fragments and base64-decodes chunked transport data before executing the payload. Hostnames and API names are assembled at runtime from split arrays to evade static code inspection tools.
The incident was identified by the OpenSSF's malicious-packages project and reported via GitHub Security Advisory GHSA-r6wh-r68v-mrj9.
Indicators of compromise
- Packages
- dolyame-ui-lazyrender
- Domains
- oob-worker.cf99-9b3.workers.dev
- oob-worker.cf101-adf.workers.dev
- oob-worker.cf100-416.workers.dev
- sdk.dl.wel1.ru
- ext.dl.wel1.ru
- pkg.dl.wel1.ru
- net.dl.wel1.ru
Remediation
- Remove dolyame-ui-lazyrender from all projects immediately
- Audit npm dependencies for similar obfuscation patterns and suspicious network calls
- Review execution logs for any suspicious child processes spawned from Node.js
- Monitor for outbound connections to the identified attacker domains (oob-worker.cf*.workers.dev, *.dl.wel1.ru)
- Regenerate any credentials or secrets that may have been exposed on affected systems
- Consider using npm audit and supply chain security tools to detect similar malicious packages
Sources
- GitHub Advisory GHSA-r6wh-r68v-mrj9 · GitHub Advisory Database
Cite this entry
"Malicious code in dolyame-ui-lazyrender (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 7, 2026; last updated August 7, 2026. https://supplychainattack.org/incident/malicious-code-in-dolyame-ui-lazyrender-npm-1mpei7
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- resolvedcritical
Malicious code in rust-testing-utils (npm)
The npm package rust-testing-utils contained malicious code that impersonates the pino logger and executes remotely-fetched code with arbitrary privileges. The package spawns a child process that decodes a hardcoded URL, fetches attacker-controlled content, and executes it via Function constructor with full module-loading capability.
npmCompromised packageMalicious commit - containedcritical
Malicious code in stillm4ddpocs-demo-sprocket (npm)
The npm package stillm4ddpocs-demo-sprocket version 999.9.12 contains malicious code that exfiltrates system and project metadata via multiple channels (HTTPS, HTTP, and DNS) to a hardcoded callback host. The package uses a high version number to exploit dependency-confusion attacks against organizations with internal packages of the same name.
npmCompromised packageDependency confusion - containedcritical
Malicious code in @syncraft-labs/react (npm)
The npm package @syncraft-labs/react contained obfuscated malicious code in its ESM distribution that implements the EtherHiding pattern, fetching and executing arbitrary code from an Ethereum smart contract via RPC endpoints. The tampering occurred post-build in the dist/index.js artifact.
npmCompromised package - containedcritical
Malware in hydration-dim-kit
Malware was discovered in the npm package hydration-dim-kit. Any computer with this package installed or running should be considered fully compromised. All secrets and keys must be rotated immediately from a different computer.
npmCompromised package