GHSA-wfcx-722r-fg5h: Malicious code in string-target-mapper-hash (npm)
--- -= Per source details. Do not edit below this line.=-
Source: amazon-inspector (4f356f513bed48330cd1a0538e53ac429f5570385e8b0bcc3fcc5c94876e437b) package.json declares its sole dependency shard-writer-parser-mutex as a bare HTTPS URL to a non-registry host (https://artifacts.creditslib.com/npm/shard-writer-parser-mutex) rather than a semver range against the npm registry. On npm install, npm fetches whatever tarball that URL currently returns and installs it, executing any lifecycle scripts it contains; the shipped index.js is a one-line re-export, so loading this package also loads code from that host. The URL is unpinned (no version, no commit, no integrity hash), the host is unrelated to the npm registry, and the content served there can change at any time without any republish of this package. The declared dependency name also mirrors the host package's own naming shape, consistent with a dependency-confusion lure where the manifest itself is the delivery mechanism.
Source: ghsa-malware (aa1723c1a5589a8e05f050b8315839ef0733a2429c6da7993fba409cd36188de) 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
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Remove
Remove
npm/string-target-mapper-hashfrom your environment.Remove the string-target-mapper-hash package; removing it may not remove all malicious software resulting from its installation.
- Operational
Rotate all secrets and keys stored on the affected computer immediately, using a different computer.
Event History
Frequently Asked Questions
Which environments should be treated as exposed?
Any computer with this package installed or running should be considered fully compromised. Exposure can occur during npm install because the package retrieves and installs its sole dependency from a non-registry HTTPS host.
Does exploitation require a particular application feature or runtime path?
No particular application feature is identified. Installing the package can execute lifecycle scripts from the remotely served dependency, and loading the package also loads code from that host.
Is the remotely retrieved dependency fixed to a known version or artifact?
No. The dependency URL is unpinned and has no version, commit, or integrity hash, so the host can serve different content without a republish of this package.