TC-2026-0012 · NPM · PACKAGE
[email protected]
Malicious dependency injected into [email protected] and [email protected]; executes a cross-platform remote access trojan via postinstall script.
Signed ledger verdict
TC-2026-0012
Known bad (exit 2)
npm:[email protected]
IOC & scope: npm:[email protected]. Verified by human review and signed into the CC-BY 4.0 OSV v1.6.0 feed.
Run live in Counter Workbench
Signed in /feed.json (.sig).
Deterministic capability profile and taxonomy mapping.
Every artifact in the threat.cafe ledger is profiled across eight execution vectors and mapped to the OWASP Top 10 for Agentic Applications (ASI01-ASI10) and Agentic Skills & Tools (AST01-AST10).
8-Vector Capability X-Ray (ABOM)
-
1. Filesystem
Sensitive paths touched:
~/.ssh/*, ~/.aws/* -
2. Environment
Variables harvested:
process.env.* -
3. Network
Outbound egress domains:
plain-crypto-js-c2.invalid:443 -
4. Subprocess
Process execution primitives:
node postinstall.js -
5. Lifecycle
Install / startup hooks:
postinstall -
6. OAuth / MCP
Declared scopes:
None observed -
7. Obfuscation
Encoding / steganography:
xor_hex_payload -
8. Provenance
Attestation status:
attacker_staged_package
Governance & detector mapping
- OWASP Agentic ASI (2026): ASI04 (Agentic Supply Chain Vulnerabilities), ASI05 (Unexpected Code Execution (RCE))
- OWASP Agentic AST (2026): AST01 (Malicious MCP Servers), AST03 (Insecure Credential Handling)
- Deterministic rules matched:
RULE_04_INSTALL_LIFECYCLE_HOOK, RULE_05_PROMPT_EXFIL_SHELL, RULE_06_RELEASE_AGE_GATE
Version scoping & related records
- No other versions of this package are currently listed on the board. Unlisted versions evaluate to
unknownunder localpolicy.yml.
Local CLI verification
$ threat-cafe-hook check "npm:[email protected]" [threat.cafe] known_bad: npm:[email protected] (TC-2026-0012) Reason: Malicious dependency injected into [email protected] and [email protected]; executes a cross-platfor Source: https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan (credited to StepSecurity / Socket)
OSV v1.6.0 machine-readable record
Included in /feed.json under CC-BY 4.0 license and verified by /feed.json.sig.
{
"schema_version": "1.6.0",
"id": "TC-2026-0012",
"modified": "2026-03-31T08:25:00Z",
"published": "2026-03-31T08:25:00Z",
"summary": "Malicious dependency injected into [email protected] and [email protected]; executes a cross-platform remote access trojan via postinstall script.",
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "plain-crypto-js"
},
"versions": [
"4.2.1"
]
}
],
"credits": [
{
"name": "StepSecurity / Socket",
"type": "FINDER"
}
],
"references": [
{
"type": "ADVISORY",
"url": "https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan"
},
{
"type": "WEB",
"url": "https://threat.cafe/incidents/tc-2026-0012/"
}
],
"database_specific": {
"target": "npm:[email protected]",
"kind": "package",
"verdict": "known_bad",
"ioc": "npm:[email protected]",
"artifact_sha256": "8dfbd72a31e34af902ee9a95e52eeb66b126187c5811f1ad40430a90fe743055",
"owasp_asi": [
"ASI04",
"ASI05"
],
"owasp_ast": [
"AST01",
"AST03"
],
"rules_matched": [
"RULE_04_INSTALL_LIFECYCLE_HOOK",
"RULE_05_PROMPT_EXFIL_SHELL",
"RULE_06_RELEASE_AGE_GATE"
],
"abom": {
"fs_sensitive": [
"~/.ssh/*",
"~/.aws/*"
],
"env_harvest": [
"process.env.*"
],
"net_egress": [
"plain-crypto-js-c2.invalid:443"
],
"proc_exec": [
"node postinstall.js"
],
"install_hooks": [
"postinstall"
],
"oauth_scopes": [],
"obfuscation": [
"xor_hex_payload"
],
"provenance": "attacker_staged_package"
},
"license": "CC-BY-4.0",
"record_digest": "sha256:eff1edf6597fd26ab411173e1d0e7f4ab77b0dff3b6c689082d64b84a6fc1865",
"release_signature_url": "https://threat.cafe/feed.json.sig"
}
}
Have additional IOCs or a maintainer remediation update for TC-2026-0012?
Maintainer disputes and version-scoping updates are reviewed by a human within our 48-hour dispute SLA.