{"id":"MAL-2026-12409","summary":"Malicious code in pfp-block-mobile-past-meetup-list (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (cf58f1cbe01e2a0634ec464f040fc08dadf2df035af8c8a68d1fea1d51f10a85)\nOn require() of pfp-block-mobile-past-meetup-list, index.js loads _ext.js which runs a bootstrap routine. It fetches a platform-specific binary via https.get from one of three Cloudflare Workers hosts (oob-worker.cf1-03-070.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev), with a DNS-TXT chunked fallback resolved through tin.dl.well1.site, tina.dl.well1.site, ldr.dl.well1.site, and win.dl.well1.site. The fetched payload is written to /var/tmp/.cache_\u003chex\u003e on Unix or %TEMP%\\dotnet_diag_\u003chex\u003e.exe on Windows, chmod 0755, and spawned detached via /bin/sh -c or cmd.exe /c start. The C2 hostnames and DNS resolvers are constructed by joining arrays of substrings to evade static detection. Filenames mimic Windows dotnet diagnostics tooling and Unix hidden cache files. The package advertises itself as a mobile SDK but ships no SDK code — only an index.js stub and the _ext.js dropper. Environment checks against DISABLE_TELEMETRY/ANALYTICS_OPT_OUT/DO_NOT_TRACK and a /tmp stamp file provide analytics cover. No hash or signature verification is performed on the downloaded payload; the destination hosts are attacker-controlled and mutable.\n\n## Source: ghsa-malware (89cfeac84b4056bcedb77e7b34cf5ef321a1f9af8aaf2f41bf24a8d62e299dd2)\nAny computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.\n","aliases":["GHSA-qxjp-57vp-657q"],"modified":"2026-08-06T01:21:08.233561535Z","published":"2026-08-05T12:51:23Z","database_specific":{"malicious-packages-origins":[{"id":"IN-MAL-2026-014788","import_time":"2026-08-05T13:08:46.570518766Z","modified_time":"2026-08-05T12:51:23Z","sha256":"cf58f1cbe01e2a0634ec464f040fc08dadf2df035af8c8a68d1fea1d51f10a85","source":"amazon-inspector","versions":["20.5.1"]},{"import_time":"2026-08-06T00:58:53.440049275Z","modified_time":"2026-08-05T18:05:36Z","ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}],"sha256":"89cfeac84b4056bcedb77e7b34cf5ef321a1f9af8aaf2f41bf24a8d62e299dd2","source":"ghsa-malware","id":"GHSA-qxjp-57vp-657q"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/pfp-block-mobile-past-meetup-list/v/20.5.1"},{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-qxjp-57vp-657q"}],"affected":[{"package":{"name":"pfp-block-mobile-past-meetup-list","ecosystem":"npm","purl":"pkg:npm/pfp-block-mobile-past-meetup-list"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}],"versions":["20.5.1"],"database_specific":{"cwes":[{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."},{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."}],"indicators":{"package_integrity":[{"filename":"pfp-block-mobile-past-meetup-list-20.5.1.tgz","hashes":{"sha1":"57571fc06a22b04ad824105ef77d94baddf484cf","sha512_sri":"sha512-G64QiR9QGo/xAcFcIWpTB1UtwuyPKxkor/DARRCgHDDyywglQRUMQIJ6+H9mGCexWtgGrc4Kyjl6n+syirqgPQ=="}}],"evidence_files":[{"path":"_ext.js","sha256":"88c7c165e51a9906cdcdbaf49e28da4add93348fe44a0be7c03e0de81b861da1","tlsh":"f4a1869a02a6701c4bb0ebe4cb1b8815f65bf65377808294fb9c65985f7351483b2efc"}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/pfp-block-mobile-past-meetup-list/MAL-2026-12409.json"}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}