claims-ac1 1.0.0 contains only a package.json declaring a single dependency, node-ac2, that is not fetched from the npm registry but from a tarball in the GitHub repository GamerD11/ping_test (https://github.com/GamerD11/ping_test/raw/main/node-ac2.tgz). That tarball has no code and in turn depends on node-ac3, another tarball in the same repository (https://github.com/GamerD11/ping_test/raw/main/node-ac3.tgz), whose preinstall script runs node index.js and silently ignores errors. The script reads a collector host name from https://raw.githubusercontent.com/GamerD11/ping_test/main/test.txt (an oastify.com host when observed) and does nothing if the file is empty; otherwise it sends an HTTPS POST to that host on port 443, path /health, with certificate verification disabled, containing the Node.js version, home directory, working directory, platform and architecture. The package has no legitimate functionality, the data is collected without the user's knowledge, and because the install-time code and the collector host live in a GitHub repository outside the npm package, the publisher can change them at any time without a new npm release. The same repository and mechanism are used by claims-acct-unlock (MAL-2026-18404) and dependencykfeg (MAL-2026-18416). Any machine that installed this version has disclosed the listed host details to a third party; remove the package.
{
"iocs": {
"domains": [
"qc680rx0ayjqtw47t2tnuar0irohc6.oastify.com"
],
"files": [
{
"digests": {
"sha256": "ff368653acbc5c6fac8f0e7ae3f5cb56cdb2066bb837b17f56a8f2d3a1f45a2d"
},
"note": "node-ac3.tgz archive digest: preinstall `node index.js`, HTTPS POST of host details to the host named in test.txt",
"paths": [
"node_modules/node-ac3/index.js"
],
"source": "DROPPED"
}
],
"urls": [
"https://github.com/GamerD11/ping_test/raw/main/node-ac2.tgz",
"https://github.com/GamerD11/ping_test/raw/main/node-ac3.tgz",
"https://raw.githubusercontent.com/GamerD11/ping_test/main/test.txt"
]
}
}