{"id":"MAL-2026-12280","summary":"Malicious code in tinkoff-terminal-kit-datetime (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (3ff5d079ddd6e9ef6bd552f3a33ec5d0c87dcad3dce14013cbf28cbaa37a1dc1)\nThe package's main index.js unconditionally requires _runtime.js, which on any require/import selects a platform-specific endpoint and downloads an opaque binary over HTTPS from author-controlled Cloudflare Workers hosts (oob-worker.cf100-416.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf103-070.workers.dev), with a DNS TXT chunked-base64 fallback via tin.dl.well1.site, tina.dl.well1.site, ldr.dl.well1.site, and win.dl.well1.site. The destination hostnames are assembled from split string fragments (e.g. \"oob-worker.cf100-416.wor\"+\"ke\"+\"rs.de\"+\"v\") and require is accessed indirectly (require(\"child_\"+\"process\")) to defeat static analysis. The downloaded bytes are written to /tmp or %TEMP% under a disguised name (.cache_\u003chex\u003e on Unix, dotnet_diag_\u003chex\u003e.exe on Windows), chmod 0755, and spawned detached via /bin/sh -c or cmd.exe with unref(). There is no version pinning, no hash or signature verification, and the package's declared purpose is a datetime library with no legitimate need for a native binary. A sibling lib/telemetry.js repeats the same child_process + base64 + chmod 755 pattern. The name resembles a Tinkoff-adjacent scope, consistent with a typosquat lure delivering an opaque second-stage payload.\n","modified":"2026-08-05T10:06:58.023958384Z","published":"2026-08-05T08:58:53Z","database_specific":{"malicious-packages-origins":[{"sha256":"3ff5d079ddd6e9ef6bd552f3a33ec5d0c87dcad3dce14013cbf28cbaa37a1dc1","source":"amazon-inspector","versions":["20.7.2"],"id":"IN-MAL-2026-014495","import_time":"2026-08-05T09:28:18.578716605Z","modified_time":"2026-08-05T08:58:53Z"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/tinkoff-terminal-kit-datetime/v/20.7.2"}],"affected":[{"package":{"name":"tinkoff-terminal-kit-datetime","ecosystem":"npm","purl":"pkg:npm/tinkoff-terminal-kit-datetime"},"versions":["20.7.2"],"database_specific":{"indicators":{"evidence_files":[{"path":"_runtime.js","sha256":"2659db37a9ed2ba715355482b3d56bd764730fec04a4a160d1ed7bc17eb248f4","tlsh":"79b1b86a156670194b70d7e1cb17540af667f65333808294fb9c99984fb2224c3f2efc"}],"package_integrity":[{"filename":"tinkoff-terminal-kit-datetime-20.7.2.tgz","hashes":{"sha1":"d02cb6e5544db12ebf7abde9dbf6f6074974adbb","sha512_sri":"sha512-pH0QA3nppZHdsvFBDq/jSZouUfkU0DQjrkZKLNCbyVnFzBg8v+aR+aHT2HtjbZ1TBDT0rro8EpWQ5Xjcd7PC/g=="}}]},"cwes":[{"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-terminal-kit-datetime/MAL-2026-12280.json"}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}