typescript-util-core@7.1.5
Malicious code in typescript-util-core (npm)
Analysis
The postinstall hook (node test.js) triggers a multi-stage credential theft and backdoor payload. It contacts C2 at 170[.]205[.]31[.]203:3001 to fetch an SSH public key and file-scanning patterns. On Linux systems, the attacker's SSH key is appended to ~/.ssh/authorized_keys and the firewall is configured to allow port 22. The payload then recursively scans the home directory (or all drives on Windows) for files matching C2-supplied patterns, and exfiltrates them via HTTP POST to 170[.]205[.]31[.]203:3001/api/v1 along with username and platform metadata. Separately, it searches the working directory for credential files (id.json, config.toml, .env) and uploads them to 170[.]205[.]31[.]203:3000. C2 endpoints: /api/ssh-key, /api/scan-patterns, /api/block-patterns, /api/v1.
- analyzed by
- Leitwacht
- first seen
- Jun 15, 2026, 09:41 AM
- analyzed
- Jun 15, 2026, 04:53 PM
Related advisories
- typescript-util-core@7.1.3 same package
- typescript-util-core@3.5.0 same package
- ts-lint-builders-v2.1@2.1.0
- ref-slot@1.0.9
- block-slot@1.0.9
- system-driver@1.0.1
- pretty-pino-logger@2.0.2
- prettier-logger@0.1.4
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.