{"id":"MAL-2026-12534","summary":"Malicious code in cardsmobile-notifications (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (5a75c5659b227cbea7e622e9c5613594e590fae0580db08420e9f2493b2fd3d2)\nOn require() of cardsmobile-notifications, index.js loads _support.js which fetches an OS/arch-specific executable from a rotating list of obfuscated Cloudflare Workers endpoints (oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf103-070.workers.dev), with a DNS TXT covert-channel fallback that assembles a base64 payload from numbered subdomains under sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru. The downloaded bytes are written to /var/tmp or %TEMP% under disguised names (dotnet_diag_*.exe,.cache_*), chmod 0755, and spawned detached via cp.spawn(\"/bin/sh\", [\"-c\", fp + \" &\"], {detached:true}).unref(). No hash or signature verification is performed; the destinations are not the publisher; the C2 hostnames are assembled via string-split.join(\"\") to evade static matching. A second 81KB module lib/telemetry.js, disguised as an APM/telemetry SDK, contains the same base64-decode + chmod 0755 + /bin/sh spawn pattern; it is not reached from index.js in this version but is armed and could be re-wired by a future release.\n","modified":"2026-08-05T14:35:04.854527406Z","published":"2026-08-05T14:16:22Z","database_specific":{"malicious-packages-origins":[{"import_time":"2026-08-05T14:20:15.290568938Z","modified_time":"2026-08-05T14:16:22Z","sha256":"5a75c5659b227cbea7e622e9c5613594e590fae0580db08420e9f2493b2fd3d2","source":"amazon-inspector","versions":["35.7.6"],"id":"IN-MAL-2026-015234"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/cardsmobile-notifications/v/35.7.6"}],"affected":[{"package":{"name":"cardsmobile-notifications","ecosystem":"npm","purl":"pkg:npm/cardsmobile-notifications"},"versions":["35.7.6"],"database_specific":{"cwes":[{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."}],"indicators":{"package_integrity":[{"filename":"cardsmobile-notifications-35.7.6.tgz","hashes":{"sha1":"64feaead615e94c4a0210536dcac83c00313b74f","sha512_sri":"sha512-MqxwVQ2F20Vzg/uY6hL+FimQXGldc4EFHpyCdI23cOGhCqSRYJA+9S1ORsyxPoIAmIUKkLGUcFiTfTXMeOCu2w=="}}],"evidence_files":[{"sha256":"97cb20f88e8535c3cbd9143d4d60d63976d64e77ee1d8fdef90415340c1ca4fe","tlsh":"b8b1b79a02a6701c4b70ebe4c71b4826f55af6633781c294f79c69885fb352483b1efc","path":"_support.js"},{"path":"lib/telemetry.js","sha256":"a77d54094827817cf1170226e8305ca9811d52918a156dc7f7dc9c7d6c75d242","tlsh":"20835055566a242186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc"}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/cardsmobile-notifications/MAL-2026-12534.json"}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}