If this package is installed
Remove it, treat the machine (or CI runner) as compromised, and rotate every secret, token and key it could access — from a different, clean machine.
Details
Source: amazon-inspector (6324266ac0f7a76fc3a8e8209d194daa17bdd47c913207f218f7c1683db4333c)
package.json declares a preinstall script that shells out via child_process to curl http://216.126.236.46/x.sh and pipe the response into /bin/bash, running attacker-controlled code on the installer's machine at npm install time. The fetch is unpinned, uses plain HTTP to a bare IP with no integrity check, and is wrapped in a try/catch that suppresses errors. The shipped index.js is a one-line stub exporting a no-op request() function, so the package provides no legitimate functionality — the manifest lifecycle hook is the entire payload, and the 'API client' framing is a cover story.
Source: ossf-package-analysis (e30333357bace03d536c107ea6180be7a1951073192c1647bcb028e9fac3d633)
The OpenSSF Package Analysis project identified 'grafeno-api' @ 1.0.1 (npm) as malicious.
It is considered malicious because:
- The package executes one or more commands associated with malicious behavior.