Malicious code in @drone-js-ext/vip-badge (npm)
The advisory, in context
-= Per source details. Do not edit below this line.=-
Source: amazon-inspector (914f57c3481f23f4682ff7bdd7b9849865531023c6d547ed76d42e9da6bbd8dc)
@drone-js-ext/vip-badge is a functionless stub whose only behavior is a phone-home beacon. The package.json postinstall script runs node beacon.cjs, and index.js fires the same beacon on require() while exporting a Proxy that returns no-ops for every property access. beacon.cjs collects the installer's hostname (os.hostname()), install path (__dirname), current working directory (process.cwd()), Node.js version, and package coordinate, then POSTs them as JSON to the hardcoded bare-IP endpoint http://185.158.107.175:8787/_ah/dc over plain HTTP. The destination is not the npm registry, not a publisher-owned domain, and is reached automatically at install time and on module load without any caller invocation. The scope name mimics a plausible internal/vendor namespace, and the shipped contents match the dependency-confusion beacon pattern — a stub published to prove install on target networks and disclose host identity to an uncontrolled third party.
Source: ghsa-malware (db67ee02c834274d865c0db6b49793d2c7785a0cab810bbb7a4256757712c75b)
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 packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
All releases from the beginning; no upper bound recorded
No fix recorded for this interval.
4 explicitly affected versions
99.0.1, 0.0.1, 2.0.0, 1.0.1
View affected-version evidence
{
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "SEMVER"
}
],
"versions": [
"99.0.1",
"0.0.1",
"2.0.0",
"1.0.1"
]
}References
- https://www.npmjs.com/package/@drone-js-ext/vip-badge/v/99.0.1
- https://www.npmjs.com/package/@drone-js-ext/vip-badge
- https://www.npmjs.com/package/@drone-js-ext/vip-badge/v/1.0.1
- https://www.npmjs.com/package/@drone-js-ext/vip-badge/v/0.0.1
- https://www.npmjs.com/package/@drone-js-ext/vip-badge/v/2.0.0
- https://github.com/advisories/GHSA-h7v8-65vw-r7wh