{"id":"MAL-2026-13110","summary":"Malicious code in bpm-foundation-feedback (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (a2628bc930d903e5a69d6827559867687193357682be11a6caed59a65941caaf)\nOn require() of the package, _adapter.js runs a setup() routine that detects the host OS and architecture, reconstructs Cloudflare Workers hostnames from split string arrays (oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf100-416.workers.dev) with a DNS TXT chunked fallback against *.dl.wel1.ru, fetches a platform-specific binary via https.get to /pkg/package..., writes it to /var/tmp or %TEMP% under a disguised name (dotnet_diag_\u003chex\u003e.exe on Windows,.cache_\u003chex\u003e on Unix), chmods 0755, and spawns it detached and unref'd via cp.spawn('/bin/sh', ['-c', fp+' &']) or the Windows cmd equivalent. There is no version pinning, no hash or signature verification, and the fetched binary is unrelated to the package's stated 'persistence adapter' purpose. Destination hostnames are assembled at runtime from split string arrays to hide the literal C2 domains, and TELEMETRY opt-out environment variables are referenced as cover. index.js require('./_adapter') causes this to fire for any consumer of the package.\n","modified":"2026-08-05T15:52:28.131385615Z","published":"2026-08-05T14:21:27Z","database_specific":{"malicious-packages-origins":[{"modified_time":"2026-08-05T14:21:27Z","sha256":"a2628bc930d903e5a69d6827559867687193357682be11a6caed59a65941caaf","source":"amazon-inspector","versions":["35.8.8"],"id":"IN-MAL-2026-015269","import_time":"2026-08-05T15:19:41.682937054Z"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/bpm-foundation-feedback/v/35.8.8"}],"affected":[{"package":{"name":"bpm-foundation-feedback","ecosystem":"npm","purl":"pkg:npm/bpm-foundation-feedback"},"versions":["35.8.8"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"package_integrity":[{"hashes":{"sha1":"33ffcfcfa1557633f50538537e59f224597ccf19","sha512_sri":"sha512-wbn3EC4NHkcsnpp6oDSmMpRBaNGgAVAU5mdqTQSYEWL2itaZb+ssJGMlbzavrZvsTJSXYzRO0KRPHf4h9Al2Xw=="},"filename":"bpm-foundation-feedback-35.8.8.tgz"}],"evidence_files":[{"sha256":"93220bf570f441d682824ff019016b4c6669facc054935b7242a4a29816fa917","tlsh":"aba1969a056a701887b0ebe4c7175416f65be6633380d6c4fb9c5a581f7213483b2efc","path":"_adapter.js"}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/bpm-foundation-feedback/MAL-2026-13110.json"}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}