{"id":"MAL-2026-12531","summary":"Malicious code in cardsmobile-data-utils (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (a5f06952752248dcbd4411398f97014f1fd133db0cb66bfeb2b7121a4f974feb)\nOn require() of cardsmobile-data-utils, index.js loads./_vendor.js, which downloads a platform-specific native executable over HTTPS from hardcoded Cloudflare Workers hosts (oob-worker.cf103-070.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf101-adf.workers.dev) with a DNS-TXT chunked fallback to *.dl.wel1.ru, writes it under /var/tmp or %TEMP% with a randomized name, chmods it 0755 on Unix, and spawns it detached via /bin/sh -c or cmd. No hash or signature verification is performed and the destinations are unrelated to the package's advertised 'helper methods' purpose. Hostnames and sensitive API names are assembled from split string fragments (['oob-wor','ker.cf101-a','df','.workers.','dev'].join(''), 'child_'+'process', fs['chmod'+'Sync']) to evade static inspection. A second copy of the download-write-chmod-spawn chain is shipped in lib/telemetry.js (~81 KB) disguised as an APM/telemetry SDK, with base64-decoded payload buffering and the same detached shell spawn, providing a redundant staged payload in the tarball.\n","modified":"2026-08-05T14:35:02.447079613Z","published":"2026-08-05T14:17:21Z","database_specific":{"malicious-packages-origins":[{"import_time":"2026-08-05T14:20:15.867080114Z","modified_time":"2026-08-05T14:17:21Z","sha256":"a5f06952752248dcbd4411398f97014f1fd133db0cb66bfeb2b7121a4f974feb","source":"amazon-inspector","versions":["35.6.2"],"id":"IN-MAL-2026-015241"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/cardsmobile-data-utils/v/35.6.2"}],"affected":[{"package":{"name":"cardsmobile-data-utils","ecosystem":"npm","purl":"pkg:npm/cardsmobile-data-utils"},"versions":["35.6.2"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/cardsmobile-data-utils/MAL-2026-12531.json","indicators":{"evidence_files":[{"sha256":"bcf5fc736be085b42a47aa881b9a29d9149d9db29d4e412e3ec7b149faaafec3","tlsh":"56a1979612aa71184bb09be4c71b4415f65bf66337c0c2d4fbaca5d85f7212482b2efc","path":"_vendor.js"},{"tlsh":"08835055566a242186b2b378df234107ff3685272642429dbafc82dc1fbd72092a5ffc","path":"lib/telemetry.js","sha256":"fdc3f7b34f0a9a0468a98d41e6f1084cde7e8885ac229c422739d610d6040ce4"}],"package_integrity":[{"filename":"cardsmobile-data-utils-35.6.2.tgz","hashes":{"sha512_sri":"sha512-Q5QgKAqB4AxeiijJ08qxQsageHBDrmZmVEDEWJu6CpOsGbNvvVZvYTSqG8+RcPfKBQGuEzVQ7G2/8UCgGSNyVQ==","sha1":"3303f839f1be87f038066998d7aa83927cc107a4"}}]},"cwes":[{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."}]}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}