{"id":"MAL-2026-12664","summary":"Malicious code in constructor-blocks-renderer-mailings (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (c7b9c524160eaa76ac80781bfc28ed9e3f3b54295360d8f21989724a1dd34d34)\nOn module load, index.js requires./_bridge.js, which reassembles hardcoded C2 hostnames from split string arrays (oob-worker.cf99-9b3.workers.dev, oob-worker.cf103-070.workers.dev, oob-worker.cf102-baf.workers.dev) and issues https.get requests to download a platform-specific executable. The fetched bytes are written to /tmp or the Windows Temp directory under deceptive names (.cache_\u003chex\u003e, dotnet_diag_\u003chex\u003e.exe), chmod'd to 0755, and executed detached via cp.spawn('/bin/sh', ['-c', fp + ' &'], {detached:true}) on POSIX and cmd.exe /c start /b on Windows. When the HTTPS fetches fail, a fallback covert channel uses dns.resolveTxt against numbered subdomains of sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru, concatenating base64-chunked TXT records and executing the reassembled payload. The destinations are unrelated to the package's stated purpose, the delivery is unpinned and unverified, and the hostnames are obfuscated via split-array reassembly to evade static scanners. A large sibling bundle lib/telemetry.js (~81 KB) is present but not on the import-time graph.\n","modified":"2026-08-05T14:36:14.383415002Z","published":"2026-08-05T13:58:43Z","database_specific":{"malicious-packages-origins":[{"sha256":"c7b9c524160eaa76ac80781bfc28ed9e3f3b54295360d8f21989724a1dd34d34","source":"amazon-inspector","versions":["35.3.3"],"id":"IN-MAL-2026-015116","import_time":"2026-08-05T14:20:03.721312687Z","modified_time":"2026-08-05T13:58:43Z"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/constructor-blocks-renderer-mailings/v/35.3.3"}],"affected":[{"package":{"name":"constructor-blocks-renderer-mailings","ecosystem":"npm","purl":"pkg:npm/constructor-blocks-renderer-mailings"},"versions":["35.3.3"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/constructor-blocks-renderer-mailings/MAL-2026-12664.json","indicators":{"evidence_files":[{"tlsh":"72a186a5166670188bb0d7e5c6175415f55bf6537380c298fb9ca9c81ff311482b2efc","path":"_bridge.js","sha256":"fae770f0e79960f3f49c3eab2b6a915cceba214443bc7aec56c43eccf75e04cd"},{"sha256":"330d51e84c07ea0ad9b467f796785706449f9587ebbc007c065f6a7dc503168a","tlsh":"db835055566a242186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc","path":"lib/telemetry.js"}],"package_integrity":[{"filename":"constructor-blocks-renderer-mailings-35.3.3.tgz","hashes":{"sha1":"60b0665ee4892115b6061e338e2b082f50fa82f6","sha512_sri":"sha512-MGNXyjS0ZmZhG5xL010eaBNCeNh10vcSG6RZV66FkER0p9/B0gwv+ghET549eYy9PGGpGvSTntI/3pcAlWjS/A=="}}]}}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}