Malicious code in random-string-64 (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (9fea72321e7eb57feb094bc31de2393ec2a56903156e1257a062e40541785b96) The package advertises itself as a 5-line random-string generator, but index.js (the declared main) contains a hardcoded AES-256-CBC ciphertext blob that is decrypted with a sha256-derived key and passed to `globalThis.eval`. The `eval` identifier is hidden by storing the strings ['error','vertex','length','delta','alphabetic'] and reconstructing the function name from the first letter of each entry ('e','v','a','l'). Execution is gated by node-env-detector checks (isCI / isNpmBot / isContainer / isVirtualMachineLikely): on automated/sandboxed hosts the package only logs a benign message, while on real developer workstations the decrypted JavaScript is executed when the exported `getUniqueID(64)` function is called. Any consumer that imports random-string-64 and invokes its documented API on a developer machine runs attacker-controlled code with the privileges of the calling process. The combination of opaque encrypted payload, eval-identifier obfuscation, and explicit anti-analysis gating is unambiguous supply-chain attack shape. ## Source: ghsa-malware (51d41457185b1763aa15a707ff9249bd86b4cea4b69ef2cc9a75e2755f4d2ad8) 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 random-string-64 npm package (versions 1.0.0 and 1.0.1) advertises itself as a simple random string generator but contains a hidden malicious payload. The main file includes an AES-256-CBC ciphertext that is decrypted using a SHA-256 derived key and executed via a dynamically reconstructed eval function. Execution is gated by environment detection to evade automated analysis, only running the malicious code on real developer workstations when the exported getUniqueID(64) function is called. This results in arbitrary code execution with the privileges of the calling process, representing a clear supply-chain compromise.
Potential Impact
Any system that installs and runs the affected versions of random-string-64 and calls the getUniqueID(64) function is at risk of arbitrary code execution by an attacker. This can lead to full system compromise, including unauthorized access to secrets and keys stored on the machine. Because the malicious code executes with the privileges of the calling process, it can perform any action permitted to that user, potentially leading to persistent backdoors or data exfiltration.
Mitigation Recommendations
No official patch or fix is currently available. Users should immediately remove the random-string-64 package versions 1.0.0 and 1.0.1 from their environments. All secrets and credentials stored on potentially compromised machines should be rotated from a trusted, uncompromised system. Due to the nature of the compromise, affected systems should be considered fully compromised and undergo thorough investigation and remediation.
Malicious code in random-string-64 (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (9fea72321e7eb57feb094bc31de2393ec2a56903156e1257a062e40541785b96) The package advertises itself as a 5-line random-string generator, but index.js (the declared main) contains a hardcoded AES-256-CBC ciphertext blob that is decrypted with a sha256-derived key and passed to `globalThis.eval`. The `eval` identifier is hidden by storing the strings ['error','vertex','length','delta','alphabetic'] and reconstructing the function name from the first letter of each entry ('e','v','a','l'). Execution is gated by node-env-detector checks (isCI / isNpmBot / isContainer / isVirtualMachineLikely): on automated/sandboxed hosts the package only logs a benign message, while on real developer workstations the decrypted JavaScript is executed when the exported `getUniqueID(64)` function is called. Any consumer that imports random-string-64 and invokes its documented API on a developer machine runs attacker-controlled code with the privileges of the calling process. The combination of opaque encrypted payload, eval-identifier obfuscation, and explicit anti-analysis gating is unambiguous supply-chain attack shape. ## Source: ghsa-malware (51d41457185b1763aa15a707ff9249bd86b4cea4b69ef2cc9a75e2755f4d2ad8) 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 random-string-64 npm package (versions 1.0.0 and 1.0.1) advertises itself as a simple random string generator but contains a hidden malicious payload. The main file includes an AES-256-CBC ciphertext that is decrypted using a SHA-256 derived key and executed via a dynamically reconstructed eval function. Execution is gated by environment detection to evade automated analysis, only running the malicious code on real developer workstations when the exported getUniqueID(64) function is called. This results in arbitrary code execution with the privileges of the calling process, representing a clear supply-chain compromise.
Potential Impact
Any system that installs and runs the affected versions of random-string-64 and calls the getUniqueID(64) function is at risk of arbitrary code execution by an attacker. This can lead to full system compromise, including unauthorized access to secrets and keys stored on the machine. Because the malicious code executes with the privileges of the calling process, it can perform any action permitted to that user, potentially leading to persistent backdoors or data exfiltration.
Mitigation Recommendations
No official patch or fix is currently available. Users should immediately remove the random-string-64 package versions 1.0.0 and 1.0.1 from their environments. All secrets and credentials stored on potentially compromised machines should be rotated from a trusted, uncompromised system. Due to the nature of the compromise, affected systems should be considered fully compromised and undergo thorough investigation and remediation.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-6484
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["npm"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a3ef7de27e9c79719026317
Added to database: 06/26/2026, 22:06:22 UTC
Last enriched: 07/07/2026, 00:02:39 UTC
Last updated: 07/31/2026, 09:35:28 UTC
Views: 40
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.