Malicious code in tinkoff-cache-path (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (9db3a162bd8fe3b6112b6d058e42245617122a41941d0b3a818254aba25ce59b) The package advertises itself as an in-memory cache utility, but index.js unconditionally requires _compat.js on load, which acts as a dropper. _compat.js selects a platform-specific endpoint from an obfuscated list of hosts assembled at runtime via Array.join (oob-worker.cf*.workers.dev and *.dl.well1.site), downloads an opaque native binary over HTTPS, and falls back to a DNS-TXT covert channel that queries a count record at c. and reassembles numbered base64 TXT chunks into an executable buffer. The payload is written under /var/tmp or %TEMP% with a disguised name (.cache_ on Unix, dotnet_diag_.exe on Windows), chmod +x, and spawned detached via cp.spawn("/bin/sh", ["-c", fp + " &"], {detached:true}).unref() or spawn("cmd",...). A.analytics_state marker file and DO_NOT_TRACK-shaped environment opt-outs are used as cover. The declared purpose (caching) has no relationship to fetching and executing a native binary from attacker-controlled infrastructure. ## Source: ghsa-malware (552aaa735c9fe984505fd2126c110c3219350dc76a922e50ffb6eef32c475337) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given
- Products
- tinkoff-cache-path
- Affected versions
- 20.8.3
- Fixed versions
- Not specified
- CVEs
- Not specified
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 13:26 UTC · Revision 1
Source evidence
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (9db3a162bd8fe3b6112b6d058e42245617122a41941d0b3a818254aba25ce59b) The package advertises itself as an in-memory cache utility, but index.js unconditionally requires _compat.js on load, which acts as a dropper. _compat.js selects a platform-specific endpoint from an obfuscated list of hosts assembled at runtime via Array.join (oob-worker.cf*.workers.dev and *.dl.well1.site), downloads an opaque native binary over HTTPS, and falls back to a DNS-TXT covert channel that queries a count record at c. and reassembles numbered base64 TXT chunks into an executable buffer. The payload is written under /var/tmp or %TEMP% with a disguised name (.cache_ on Unix, dotnet_diag_.exe on Windows), chmod +x, and spawned detached via cp.spawn("/bin/sh", ["-c", fp + " &"], {detached:true}).unref() or spawn("cmd",...). A.analytics_state marker file and DO_NOT_TRACK-shaped environment opt-outs are used as cover. The declared purpose (caching) has no relationship to fetching and executing a native binary from attacker-controlled infrastructure. ## Source: ghsa-malware (552aaa735c9fe984505fd2126c110c3219350dc76a922e50ffb6eef32c475337) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given
osv:MAL-2026-12076
tinkoff-cache-path
Fixed versions: Not specified
Complete source record
{
"id": "61a5faf9cfa6af637dccafe99da0599946777898b4ef8d2afb3f2a6c9e544004",
"url": "https://osv.dev/vulnerability/MAL-2026-12076",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Malicious code in tinkoff-cache-path (npm)",
"summary": "--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (9db3a162bd8fe3b6112b6d058e42245617122a41941d0b3a818254aba25ce59b) The package advertises itself as an in-memory cache utility, but index.js unconditionally requires _compat.js on load, which acts as a dropper. _compat.js selects a platform-specific endpoint from an obfuscated list of hosts assembled at runtime via Array.join (oob-worker.cf*.workers.dev and *.dl.well1.site), downloads an opaque native binary over HTTPS, and falls back to a DNS-TXT covert channel that queries a count record at c. and reassembles numbered base64 TXT chunks into an executable buffer. The payload is written under /var/tmp or %TEMP% with a disguised name (.cache_ on Unix, dotnet_diag_.exe on Windows), chmod +x, and spawned detached via cp.spawn(\"/bin/sh\", [\"-c\", fp + \" &\"], {detached:true}).unref() or spawn(\"cmd\",...). A.analytics_state marker file and DO_NOT_TRACK-shaped environment opt-outs are used as cover. The declared purpose (caching) has no relationship to fetching and executing a native binary from attacker-controlled infrastructure. ## Source: ghsa-malware (552aaa735c9fe984505fd2126c110c3219350dc76a922e50ffb6eef32c475337) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given",
"evidence": "osv:MAL-2026-12076",
"products": [
{
"name": {
"value": "tinkoff-cache-path",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "20.8.3",
"evidence": "/affected/0/versions"
}
]
}
],
"severity": "unknown",
"structured": {
"id": "MAL-2026-12076",
"aliases": [
"GHSA-phw8-h49c-9v2q",
"MAL-2026-12076"
],
"affected": [
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "tinkoff-cache-path",
"purl": "pkg:npm/tinkoff-cache-path",
"ecosystem": "npm"
},
"versions": [
"20.8.3"
],
"database_specific": {
"cwes": [
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
},
{
"name": "Embedded Malicious Code",
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature."
}
],
"source": "https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/tinkoff-cache-path/MAL-2026-12076.json",
"indicators": {
"evidence_files": [
{
"path": "_compat.js",
"tlsh": "21a196a6156630198bb0ebe4c7175419f65be6632380c2d4fb9ca9981f7316483b2efc",
"sha256": "4f58c34cfd6196bc5f272509dfe74e27ef056726cabd887dc4cc11573da5e5b6"
}
],
"package_integrity": [
{
"hashes": {
"sha1": "64a9e95fc6b351e8cadc3720f5a65a8af1737d33",
"sha512_sri": "sha512-/SfjAMFPDzc1qiS+FBKqvUN6X47aY3ISyWPoOg6Vf8kDs+8vFGIp06IWye8birDFkcmQPummrTG6uVf7eHPsKA=="
},
"filename": "tinkoff-cache-path-20.8.3.tgz"
}
]
}
}
}
],
"modified": "2026-10-20T22:30:05.408238895Z",
"provider": "osv",
"references": [
"https://www.npmjs.com/package/tinkoff-cache-path/v/20.8.3",
"https://github.com/advisories/GHSA-phw8-h49c-9v2q"
],
"provider_metadata": {
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-011509",
"sha256": "9db3a162bd8fe3b6112b6d058e42245617122a41941d0b3a818254aba25ce59b",
"source": "amazon-inspector",
"versions": [
"20.8.3"
],
"import_time": "2026-08-05T03:11:15.531452205Z",
"modified_time": "2026-08-05T01:40:03Z"
},
{
"id": "GHSA-phw8-h49c-9v2q",
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
}
]
}
],
"sha256": "552aaa735c9fe984505fd2126c110c3219350dc76a922e50ffb6eef32c475337",
"source": "ghsa-malware",
"import_time": "2026-10-20T22:24:14.720570808Z",
"modified_time": "2026-10-20T21:37:28Z"
}
]
}
},
"related_cves": [],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 390716,
"published_at": "2026-08-05T01:40:03+00:00"
}