{"id":"MAL-2026-12597","summary":"Malicious code in checkout-todo-test (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (a87cb6c1e9ab39c21cd5d1031cadd2c192f86aaa337a62a7476657d5ee3f7f39)\nOn require of this package, index.js loads _platform.js, which asynchronously downloads a platform-specific binary from anonymous Cloudflare Workers hosts (oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf103-070.workers.dev), with a DNS-TXT covert-channel fallback that reassembles a base64 payload from numbered subdomain records under *.dl.wel1.ru. The destination hostnames are assembled at runtime by joining split string fragments to evade static analysis. The downloaded bytes are written to a temp path with a disguised name (.cache_XXXX on Unix, dotnet_diag_XXXX.exe on Windows), chmod 0755 on Unix, and executed via cp.spawn(\"/bin/sh\", [\"-c\", fp + \" &\"], {detached:true}) or cmd.exe /c start /b. There is no hash or signature verification, and the hosts are not publisher-controlled infrastructure. The tarball also ships an unreferenced sibling module lib/telemetry.js (~81 KB) containing the same download→chmod→spawn pattern as latent staged code. The package presents its behavior as \"telemetry/analytics\" with env-var opt-outs, but the runtime-reconstructed C2 destinations, DNS covert channel, and disguised on-disk artifacts are inconsistent with legitimate telemetry.\n","modified":"2026-08-05T14:35:41.798687165Z","published":"2026-08-05T14:06:41Z","database_specific":{"malicious-packages-origins":[{"modified_time":"2026-08-05T14:06:41Z","sha256":"a87cb6c1e9ab39c21cd5d1031cadd2c192f86aaa337a62a7476657d5ee3f7f39","source":"amazon-inspector","versions":["35.5.9"],"id":"IN-MAL-2026-015168","import_time":"2026-08-05T14:20:08.94795422Z"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/checkout-todo-test/v/35.5.9"}],"affected":[{"package":{"name":"checkout-todo-test","ecosystem":"npm","purl":"pkg:npm/checkout-todo-test"},"versions":["35.5.9"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/checkout-todo-test/MAL-2026-12597.json","cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"path":"_platform.js","sha256":"97f50054098ef31a1d2afbf56dc6ee2e57105feda680e83c6ef2aed38ea6cfe5","tlsh":"bfa1b75a11a670198bb09bf08717441af65be66333c0c5d8fb9c99981f7312483b1efc"},{"sha256":"dbd28bd8265095e18aea4017c760468e1810bfab802a5c2b0a7245534883418b","tlsh":"ed835056566a142186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc","path":"lib/telemetry.js"}],"package_integrity":[{"filename":"checkout-todo-test-35.5.9.tgz","hashes":{"sha1":"4c04f0c82cec02648fdb357d692ccbe9b17126c6","sha512_sri":"sha512-UKuU0VdEfA05hobDCD+kRpMw5LwwIo8HihIZzkbc1JxzLspmNrReRK/jI+nnR4lZLrSsp4JUEZKI9behyFS5Ng=="}}]}}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}