{"id":"MAL-2026-18491","kind":"package","aliases":["MAL-2026-18491"],"related":[],"title":"Malicious code in @corexium/xbails (npm)","description":"---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (7e3ba0508c4009825b9eb3d248094ccbf28b2a2b4dcec420d1aaa533c1594729)\npackage.json aliases the import name 'libsignal' to the third-party npm package '@bellaxchuu/libsignal-node' pinned only to the mutable '@latest' dist-tag: \"libsignal\": \"npm:@bellaxchuu/libsignal-node@latest\". The code imports 'libsignal' at module load time for end-to-end-encryption primitives (SessionCipher, SessionRecord, ProtocolAddress, SessionBuilder in lib/Signal/libsignal.js and lib/Signal/curve.js). Each install resolves whatever the owner of @bellaxchuu/libsignal-node has published to @latest, with no version pin, no integrity check, and no provenance tie to the upstream libsignal-node project. The maintainer of the aliased fork therefore controls arbitrary code that runs at require/import time of this package, including inside the cryptographic session-handling path.","summary":null,"severity":"critical","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"@corexium/xbails","fixed":[],"affected":"= 0.0.7","ecosystem":"npm"}],"ecosystems":["npm"],"tags":["malicious","package"],"not_affected_if":[],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-11-03T03:35:28+00:00","first_seen_at":"2026-11-03T04:17:40+00:00","triaged_at":"2026-11-03T04:18:14+00:00","updated_at":"2026-11-03T04:19:23+00:00","category":"package","confidence":null,"triage":null,"analyst_status":null,"analyst_note":null,"search":"'-18491':8A,11A '-2026':7A,10A '7e3':28C 'alias':31C,114C 'amazon':26C 'amazon-inspector':25C 'arbitrari':118C 'ba0508c4009825b9eb3d248094ccbf28b2a2b4dcec420d1aaa533c1594729':29C 'bellaxchuu/libsignal-node':43C,55C,87C 'check':98C 'code':2A,58C,119C 'control':117C 'corexium/xbails':4A,12A 'cryptograph':131C 'detail':17C 'dist':51C 'dist-tag':50C 'edit':20C 'encrypt':70C 'end':67C,69C 'end-to-end-encrypt':66C 'fork':115C 'handl':134C 'import':33C,59C 'includ':128C 'insid':129C 'inspector':27C 'instal':81C 'integr':97C 'latest':49C,56C,91C 'lib/signal/curve.js':79C 'lib/signal/libsignal.js':77C 'libsign':35C,53C,60C,107C 'libsignal-nod':106C 'line':23C 'load':63C 'maintain':111C 'mal':6A,9A 'malici':1A,13B 'modul':62C 'mutabl':48C 'name':34C 'node':108C 'npm':5A,41C,54C 'owner':85C 'packag':14B,42C,127C 'package.json':30C 'parti':40C 'path':135C 'per':15C 'pin':44C,95C 'primit':71C 'project':109C 'protocoladdress':74C 'proven':101C 'publish':89C 'require/import':123C 'resolv':82C 'run':121C 'session':133C 'session-handl':132C 'sessionbuild':75C 'sessionciph':72C 'sessionrecord':73C 'sourc':16C,24C 'tag':52C 'therefor':116C 'third':39C 'third-parti':38C 'tie':102C 'time':64C,124C 'upstream':105C 'version':94C 'whatev':83C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":null,"audience":null,"plain_action":null,"pkeys":["xbails"],"ptokens":["corexium","xbails"],"labels":["critical","malicious","npm","package"],"first_public_at":"2026-11-03T03:35:28+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"osv-malicious","external_id":"MAL-2026-18491","url":"https://osv.dev/vulnerability/MAL-2026-18491","severity":"critical","published_at":"2026-11-03T03:35:28+00:00","modified_at":"2026-11-03T03:45:04+00:00","first_seen_at":"2026-11-03T04:17:40+00:00","fetched_at":"2026-11-03T04:17:40+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}