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
@galicia-toolkit-nestjs/paas is a dependency confusion package published to npm on 2026-10-09 by the account s4yhii__, targeting the internal @galicia-toolkit-* / @brick-v2 package namespaces with inflated versions (e.g. 999.0.x). Early versions resolve <hostname>.<tag>.dc.oob.s4yhii.com via DNS to beacon the victim's hostname. Later versions run `node index.js` from a preinstall hook, which loads a bundled native addon (prebuilds/<platform>-<arch>/metrics.node, Linux and Windows builds). The addon forks a detached process that collects hostname, username, OS/arch, cwd and the full values of CI/cloud secrets from environment variables (NPM_TOKEN, NODE_AUTH_TOKEN, GITHUB_TOKEN, ACTIONS_RUNTIME_TOKEN, ACTIONS_ID_TOKEN_REQUEST_TOKEN, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN, SYSTEM_ACCESSTOKEN, AZURE_DEVOPS_EXT_PAT and others) and sends them as JSON via HTTP POST /native to oob.s4yhii.com:9999.
---
_-= Per source details. Do not edit below this line.=-_
Source: amazon-inspector (5df4f7b59cbe90e6b36ce17f0870cd419345167d9aee683d65a43c65ea5fb213)
The package's main entry (index.js) loads a prebuilt native addon (prebuilds/<platform>-<arch>/metrics.node) inside a try/catch on require. The ELF reads CI and cloud credentials from the environment — AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN, GITHUB_TOKEN, NPM_TOKEN, NODE_AUTH_TOKEN, SYSTEM_ACCESSTOKEN, ACTIONS_RUNTIME_TOKEN, ACTIONS_ID_TOKEN_REQUEST_TOKEN — together with host identity and working-directory fields (gethostname, getuid, getpwuid, getcwd, uname) and sends them in a JSON body (fields src, pkg, h, u, os, arch, rel, cwd, e) via a raw socket HTTP POST to oob.s4yhii.com (POST /native HTTP/1.0). The addon imports fork and setsid to daemonize and uses hand-rolled socket/connect/send rather than Node's HTTP API, bypassing Node-level network observability. The package name scope (@galicia-toolkit-nestjs) and implausibly high version (999.0.5) are consistent with a dependency-confusion payload targeting an internal package name. Installing or requiring this package in any environment carrying CI, npm publish, GitHub Actions, or AWS credentials results in those secrets being transmitted to the hardcoded attacker endpoint.
Indicators of compromise
Shown defanged and not clickable. Search any indicator to find other packages using it.
Domains
- oob[.]s4yhii[.]com other packages →
URLs
- hxxp://oob[.]s4yhii[.]com:9999/native other packages →