Malicious code in react-puller (npm)
The npm package react-puller contained malicious code in its postinstall hook that downloads and executes Windows binaries from a hardcoded IP endpoint, establishing persistence via Windows registry autostart.
- Disclosed
- Last updated
- Blast radius
- npm package ecosystem; Windows systems that installed react-puller
- Ecosystems
- Attack vectors
- Affected entities
- react-pullernpm package containing malicious postinstall hook
The npm package react-puller was published with malicious code embedded in its postinstall hook. When installed, the package executes node index.js, which spawns a detached worker process.\n\nThe worker downloads two Windows executables (CDPUserPlatform.exe and DOContentCacheMgr.exe) from a hardcoded bare-IP endpoint at http://64.49.11.161:8000 over unencrypted HTTP. These binaries are written to the ~/.react-pul directory and executed via cmd /c start.\n\nThe package establishes persistence by writing an HKCU\Software\Microsoft\Windows\CurrentVersion\Run registry entry pointing to ~/.react-pul/DOContentCacheMgr.exe, ensuring the dropped binary executes on every user login. The package was disguised as a generic React utility, with no indication of this malicious behavior in its name or description.\n\nThe incident was identified and credited to the OpenSSF malicious-packages repository.
Indicators of compromise
- Packages
- react-puller
- IPs
- 64.49.11.161
Remediation
- Immediately uninstall react-puller from all systems
- Scan Windows systems for the presence of CDPUserPlatform.exe and DOContentCacheMgr.exe in ~/.react-pul directory
- Remove any HKCU\Software\Microsoft\Windows\CurrentVersion\Run entries pointing to ~/.react-pul/DOContentCacheMgr.exe
- Review npm package.json and lock files for react-puller dependency and remove it
- Monitor for outbound connections to 64.49.11.161:8000
- Consider blocking the IP 64.49.11.161 at network perimeter
- Audit npm package installations for other suspicious postinstall hooks
Sources
- GitHub Advisory GHSA-pg26-7r73-h7pp · GitHub Advisory Database
Cite this entry
"Malicious code in react-puller (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed July 28, 2026; last updated July 28, 2026. https://supplychainattack.org/incident/malicious-code-in-react-puller-npm-5v509m
Suggest a correction
Found an error or have a newer source? Corrections to factual errors take priority over new entries.
Related incidents
- activecritical
Malware in @omniwatch-wick/cli
Malware discovered in the npm package @omniwatch-wick/cli. Systems with this package installed are considered fully compromised and require immediate remediation.
npmCompromised package - activecritical
Malware in chain-manager
Malware discovered in the npm package chain-manager. Systems with this package installed or running are considered fully compromised and require immediate remediation.
npmCompromised package - containedcritical
Malicious code in toll_free (npm)
The npm package toll_free version 1.0.1 was identified as malicious by the OpenSSF Package Analysis project. The package executes commands associated with malicious behavior.
npmCompromised package - containedcritical
Malicious code in blots (npm)
The npm package 'blots' version 2.1.0 was identified by the OpenSSF Package Analysis project as containing malicious code that executes commands associated with malicious behavior. The package has been flagged in the OpenSSF malicious packages database.
npmCompromised package