Malicious code in @zahlen/checkout-react (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (097440ff1155e4d840568cf0fc8502c00d43249340f0f301167a859fd34c9fe8) The package's main module contains a top-level block that runs on every require/import. It uses unicode-escape obfuscation (\uXXXX) to hide imports of Node built-ins including child_process (spawn), http, https, zlib, and url. The prelude resolves a command-and-control host by querying Ethereum blockchain state via https://eth.blockscout.com/api keyed off contract address 0xa322E5f3D311D3080e6f0121063e9aDC2490Ef1a (with a public ETH RPC fallback list), then polls http://<resolved-host>:443/0x/ls and /0x/cls on that host and feeds the retrieved tasks into child_process.spawn, giving a remote operator arbitrary command execution on any developer machine or CI runner that installs or imports the package. The prelude also stashes global.r=require and global.m=module so C2-delivered payloads can load additional Node built-ins without repeating the unicode-escaped require dance. The React checkout code shipped below the prelude is cover; the on-chain C2 resolution is a rotation mechanism that lets the operator move infrastructure without republishing the package. ## Source: ghsa-malware (e8ea4ffb2df60ad2438699518b35cd7acdf501aa0de47a10a479f4a523079b7f) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
AI Analysis
Technical Summary
The @zahlen/checkout-react npm package version 0.1.1 contains a top-level malicious code block that runs on every import or require. This block uses unicode-escape sequences to obfuscate the import of Node.js built-in modules including child_process, http, https, zlib, and url. It resolves a C2 server by querying Ethereum blockchain state via a specific contract address and a public ETH RPC fallback list. The package then polls endpoints on the resolved C2 host and executes received commands using child_process.spawn, enabling arbitrary command execution on the host system. The malicious code also stores references to require and module globally to facilitate loading additional Node.js modules dynamically. The visible React checkout functionality is a decoy, while the on-chain C2 resolution mechanism allows the attacker to rotate infrastructure without republishing the package.
Potential Impact
This malicious package allows remote attackers to execute arbitrary commands on any system that installs or imports @zahlen/checkout-react version 0.1.1. This includes developer machines and continuous integration environments, potentially leading to full system compromise, data theft, or further malware deployment. The use of blockchain-based C2 resolution provides resilience and stealth to the attacker’s infrastructure.
Mitigation Recommendations
No official patch or remediation is currently documented for this package version. Users should immediately remove and avoid installing or importing @zahlen/checkout-react version 0.1.1. Audit dependency trees for this package and replace it with trusted alternatives. Monitor for any signs of compromise on affected systems. Patch status is not yet confirmed — check the vendor advisory or npm security advisories for updates. Given the malicious nature, removal and avoidance is the primary mitigation.
Malicious code in @zahlen/checkout-react (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (097440ff1155e4d840568cf0fc8502c00d43249340f0f301167a859fd34c9fe8) The package's main module contains a top-level block that runs on every require/import. It uses unicode-escape obfuscation (\uXXXX) to hide imports of Node built-ins including child_process (spawn), http, https, zlib, and url. The prelude resolves a command-and-control host by querying Ethereum blockchain state via https://eth.blockscout.com/api keyed off contract address 0xa322E5f3D311D3080e6f0121063e9aDC2490Ef1a (with a public ETH RPC fallback list), then polls http://<resolved-host>:443/0x/ls and /0x/cls on that host and feeds the retrieved tasks into child_process.spawn, giving a remote operator arbitrary command execution on any developer machine or CI runner that installs or imports the package. The prelude also stashes global.r=require and global.m=module so C2-delivered payloads can load additional Node built-ins without repeating the unicode-escaped require dance. The React checkout code shipped below the prelude is cover; the on-chain C2 resolution is a rotation mechanism that lets the operator move infrastructure without republishing the package. ## Source: ghsa-malware (e8ea4ffb2df60ad2438699518b35cd7acdf501aa0de47a10a479f4a523079b7f) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The @zahlen/checkout-react npm package version 0.1.1 contains a top-level malicious code block that runs on every import or require. This block uses unicode-escape sequences to obfuscate the import of Node.js built-in modules including child_process, http, https, zlib, and url. It resolves a C2 server by querying Ethereum blockchain state via a specific contract address and a public ETH RPC fallback list. The package then polls endpoints on the resolved C2 host and executes received commands using child_process.spawn, enabling arbitrary command execution on the host system. The malicious code also stores references to require and module globally to facilitate loading additional Node.js modules dynamically. The visible React checkout functionality is a decoy, while the on-chain C2 resolution mechanism allows the attacker to rotate infrastructure without republishing the package.
Potential Impact
This malicious package allows remote attackers to execute arbitrary commands on any system that installs or imports @zahlen/checkout-react version 0.1.1. This includes developer machines and continuous integration environments, potentially leading to full system compromise, data theft, or further malware deployment. The use of blockchain-based C2 resolution provides resilience and stealth to the attacker’s infrastructure.
Mitigation Recommendations
No official patch or remediation is currently documented for this package version. Users should immediately remove and avoid installing or importing @zahlen/checkout-react version 0.1.1. Audit dependency trees for this package and replace it with trusted alternatives. Monitor for any signs of compromise on affected systems. Patch status is not yet confirmed — check the vendor advisory or npm security advisories for updates. Given the malicious nature, removal and avoidance is the primary mitigation.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-12333
- Osv Schema Version
- 1.7.4
- Ecosystems
- ["npm"]
Threat ID: 6a73574fbf8831d53915a58e
Added to database: 08/05/2026, 15:31:27 UTC
Last enriched: 08/05/2026, 17:47:04 UTC
Last updated: 09/15/2026, 23:38:36 UTC
Views: 18
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.