{"id":"MAL-2026-18659","kind":"package","aliases":["MAL-2026-18659"],"related":[],"title":"Malicious code in dependent-final (npm)","description":"Part of a self-republishing campaign: the package ships test.js, which in a loop gives the package a new random name, bumps its version, rewrites package.json and runs `npm publish` to publish the package again under the new name. Self-replicating publication is the propagation step of a registry worm and fills the registry with copies. Version examined: 1.0.3; tarball SHA-256 c8be1ce20c77c47e2ab48ca6c0642cc4cc7f259282d463d05b5b241a914c68d4.","summary":null,"severity":"critical","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"dependent-final","fixed":[],"affected":"= 1.0.3","ecosystem":"npm"}],"ecosystems":["npm"],"tags":["malicious","package"],"not_affected_if":[],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-11-02T22:34:49+00:00","first_seen_at":"2026-11-05T04:31:46+00:00","triaged_at":"2026-11-05T04:33:34+00:00","updated_at":"2026-11-05T04:35:24+00:00","category":"package","confidence":null,"triage":null,"analyst_status":null,"analyst_note":null,"search":"'-18659':10A,13A '-2026':9A,12A '-256':82C '1.0.3':79C 'bump':41C 'c8be1ce20c77c47e2ab48ca6c0642cc4cc7f259282d463d05b5b241a914c68d4':83C 'campaign':25C 'code':2A 'copi':76C 'depend':5A 'dependent':15A 'dependent-fin':4A 'dependent-final':14A 'examin':78C 'fill':72C 'final':6A,16A 'give':34C 'loop':33C 'mal':8A,11A 'malici':1A,17B 'name':40C,58C 'new':38C,57C 'npm':7A,48C 'packag':18B,27C,36C,53C 'package.json':45C 'part':19C 'propag':65C 'public':62C 'publish':49C,51C 'random':39C 'registri':69C,74C 'replic':61C 'republish':24C 'rewrit':44C 'run':47C 'self':23C,60C 'self-repl':59C 'self-republish':22C 'sha':81C 'ship':28C 'step':66C 'tarbal':80C 'test.js':29C 'version':43C,77C 'worm':70C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":null,"audience":null,"plain_action":null,"pkeys":["dependentfinal"],"ptokens":["dependent","final"],"labels":["critical","malicious","npm","package"],"campaign_type":null,"first_public_at":"2026-11-02T22:34:49+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"osv-malicious","external_id":"MAL-2026-18659","url":"https://osv.dev/vulnerability/MAL-2026-18659","severity":"critical","published_at":"2026-11-02T22:34:49+00:00","modified_at":"2026-11-05T04:15:04+00:00","first_seen_at":"2026-11-05T04:31:46+00:00","fetched_at":"2026-11-05T04:31:46+00:00","note":null}],"documents":[],"exploit_sources":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}