Malicious code in eslint-helper (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (5802f88a31cfb1c54196395aa04377de1c98657cdd78f59e4a595f2913239301) Package masquerades as an ESLint utility but contains no lint-related code. The exported from_str() recursively walks process.cwd() searching for secret-bearing files (.env, config.toml, Config.toml, config.json, env, id.json) and POSTs each file's contents to a hardcoded, base64-obfuscated endpoint at https://vercel-backend-five-vert.vercel.app/api/v1. A helper _gsh() additionally reads ~/.bash_history, ~/.zsh_history, fish history, and PowerShell PSReadLine ConsoleHost_history.txt, and shells out via execSync("bash -c history") and execSync("zsh -c 'fc -l -1000'") to dump in-memory shell history, then ships each to the same endpoint. All sensitive strings (target filenames, exfil URL, HTTP headers, USER env var name) are base64-obfuscated and decoded at module load via a decodeStr helper, indicating intentional evasion. Any project that requires this package and invokes from_str (or runs the shipped test.js) will leak credentials and shell history to the attacker. ## Source: ghsa-malware (a12235e67c9b0720356aa892ed51f2256ef30f7eb599f45b8d50eb9191aedd36) 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 eslint-helper package versions 4.0.1 and 4.0.2 are malicious. The package exports a from_str() function that recursively scans the current working directory for files commonly containing secrets (.env, config.toml, config.json, etc.) and sends their contents to a base64-obfuscated, hardcoded URL on vercel.app. Additionally, a helper function _gsh() reads multiple shell history files across different shells and executes shell commands to dump in-memory shell history, exfiltrating all collected data to the same endpoint. The use of base64 encoding for sensitive strings and the exfiltration endpoint demonstrates deliberate evasion and malicious intent. Installing or running this package compromises the host system, potentially exposing all stored secrets and shell histories to attackers.
Potential Impact
Systems with eslint-helper versions 4.0.1 or 4.0.2 installed or running are fully compromised. Sensitive files containing secrets and configuration data, as well as shell command histories, are exfiltrated to an attacker-controlled server. This leads to credential leakage, potential unauthorized access, and loss of confidentiality. The compromise may extend beyond the package itself, as attackers could have established persistent control. Removal of the package alone does not guarantee full remediation.
Mitigation Recommendations
No official patch or fix is currently available. Immediate removal of eslint-helper versions 4.0.1 and 4.0.2 from all systems is strongly recommended. All secrets and credentials stored on affected systems should be considered compromised and rotated immediately using a secure, unaffected environment. Conduct a thorough investigation for additional persistence or malicious artifacts beyond the package. Monitor for suspicious activity and consider rebuilding compromised systems if full trust cannot be established.
Malicious code in eslint-helper (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (5802f88a31cfb1c54196395aa04377de1c98657cdd78f59e4a595f2913239301) Package masquerades as an ESLint utility but contains no lint-related code. The exported from_str() recursively walks process.cwd() searching for secret-bearing files (.env, config.toml, Config.toml, config.json, env, id.json) and POSTs each file's contents to a hardcoded, base64-obfuscated endpoint at https://vercel-backend-five-vert.vercel.app/api/v1. A helper _gsh() additionally reads ~/.bash_history, ~/.zsh_history, fish history, and PowerShell PSReadLine ConsoleHost_history.txt, and shells out via execSync("bash -c history") and execSync("zsh -c 'fc -l -1000'") to dump in-memory shell history, then ships each to the same endpoint. All sensitive strings (target filenames, exfil URL, HTTP headers, USER env var name) are base64-obfuscated and decoded at module load via a decodeStr helper, indicating intentional evasion. Any project that requires this package and invokes from_str (or runs the shipped test.js) will leak credentials and shell history to the attacker. ## Source: ghsa-malware (a12235e67c9b0720356aa892ed51f2256ef30f7eb599f45b8d50eb9191aedd36) 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 eslint-helper package versions 4.0.1 and 4.0.2 are malicious. The package exports a from_str() function that recursively scans the current working directory for files commonly containing secrets (.env, config.toml, config.json, etc.) and sends their contents to a base64-obfuscated, hardcoded URL on vercel.app. Additionally, a helper function _gsh() reads multiple shell history files across different shells and executes shell commands to dump in-memory shell history, exfiltrating all collected data to the same endpoint. The use of base64 encoding for sensitive strings and the exfiltration endpoint demonstrates deliberate evasion and malicious intent. Installing or running this package compromises the host system, potentially exposing all stored secrets and shell histories to attackers.
Potential Impact
Systems with eslint-helper versions 4.0.1 or 4.0.2 installed or running are fully compromised. Sensitive files containing secrets and configuration data, as well as shell command histories, are exfiltrated to an attacker-controlled server. This leads to credential leakage, potential unauthorized access, and loss of confidentiality. The compromise may extend beyond the package itself, as attackers could have established persistent control. Removal of the package alone does not guarantee full remediation.
Mitigation Recommendations
No official patch or fix is currently available. Immediate removal of eslint-helper versions 4.0.1 and 4.0.2 from all systems is strongly recommended. All secrets and credentials stored on affected systems should be considered compromised and rotated immediately using a secure, unaffected environment. Conduct a thorough investigation for additional persistence or malicious artifacts beyond the package. Monitor for suspicious activity and consider rebuilding compromised systems if full trust cannot be established.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-6187
- Osv Schema Version
- 1.7.4
- Aliases
- ["GHSA-m23v-7h8v-6mp4"]
- Ecosystems
- ["npm"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a4c342c27e9c797195fa499
Added to database: 07/06/2026, 23:03:08 UTC
Last enriched: 07/07/2026, 00:07:17 UTC
Last updated: 07/18/2026, 17:27:21 UTC
Views: 4
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.