{"id":"GHSA-qpp3-3mx8-62m7","kind":"package","aliases":["GHSA-qpp3-3mx8-62m7","MAL-2026-4372"],"related":[],"title":"Malicious code in @budetzz/baileys (npm)","description":"---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (c79c7b873a8ea61831fdfd7b987de0efbf8944d2fd407a8dca4b70042a3d029c)\nThis package is a republished fork of @whiskeysockets/baileys that adds two undocumented network behaviors. (1) lib/Socket/newsletter.js line 111 schedules a setTimeout 90 seconds after a consumer constructs a WhatsApp socket via the documented makeWASocket/makeNewsletterSocket API; the timer calls loadNewsletter(), which axios.get's https://raw.githubusercontent.com/budetzz/mazzbudetzzzzz/refs/heads/main/saluran.json and then issues newsletterWMexQuery(id, FOLLOW) for every ID returned, using the consumer's authenticated WhatsApp identity. The list is hosted on a mutable main branch under the package author's personal GitHub account, so the set of channels the installer's account is forced to follow can be changed at any time without publishing a new package version. The consumer never opted in and the behavior is not documented. (2) lib/index.js line 37 fires a top-level fetch to https://raw.githubusercontent.com/z4phdev/client/refs/heads/main/information.json on every require() of the package and prints data[0].message to the console; this is a remote-mutable, author-controlled in-process content channel that beacons each installer's IP and timing to the author on import. Additionally, package.json advertises homepage https://github.com/whiskeysockets/baileys (the legitimate upstream) while fetchLatestBaileysVersion in lib/Utils/generics.js:351 is repointed to https://raw.githubusercontent.com/z4phdev/baileys/master/src/Defaults/baileys-version.json — a personal fork — so version-update telemetry is also redirected to attacker infrastructure. The silent hijack of the consumer's WhatsApp account to perform actions (channel follows) chosen by the author via a mutable URL is a silent-relay/account-hijack attack on the installer.\n\n## Source: ghsa-malware (e291b1d9c7f937a0392ee5552b4894d8a9dd32971d30850027442cf34c9d940d)\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.","summary":null,"severity":"critical","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"@budetzz/baileys","note":"all versions","fixed":[],"affected":"","ecosystem":"npm"}],"ecosystems":["npm"],"tags":["malicious","package"],"not_affected_if":[],"how_to_check":null,"fix":null,"status":"withdrawn","published_at":"2026-05-20T14:11:17+00:00","first_seen_at":"2026-11-12T18:09:28+00:00","triaged_at":"2026-11-12T18:11:19+00:00","updated_at":"2026-11-12T18:11:19+00:00","category":"package","confidence":null,"triage":null,"analyst_status":null,"analyst_note":null,"search":"'-2026':12A '-4372':13A '/account-hijack':268C '/budetzz/mazzbudetzzzzz/refs/heads/main/saluran.json':80C '/whiskeysockets/baileys':212C '/z4phdev/baileys/master/src/defaults/baileys-version.json':226C '/z4phdev/client/refs/heads/main/information.json':164C '0':174C '1':50C '111':53C '2':151C '351':220C '37':154C '3mx8':9A,17A '62m7':10A,18A '90':57C 'account':114C,123C,249C 'action':252C 'add':45C 'addit':206C 'advertis':208C 'also':236C 'amazon':33C 'amazon-inspector':32C 'api':70C 'attack':239C,269C 'authent':95C 'author':110C,186C,203C,258C 'author-control':185C 'axios.get':76C 'beacon':194C 'behavior':49C,147C 'branch':106C 'budetzz/baileys':4A,19A 'c79c7b873a8ea61831fdfd7b987de0efbf8944d2fd407a8dca4b70042a3d029c':35C 'call':73C 'chang':130C 'channel':119C,192C,253C 'chosen':255C 'code':2A 'compromis':291C 'comput':279C,299C,307C,319C 'consid':289C 'consol':178C 'construct':62C 'consum':61C,93C,141C,246C 'content':191C 'control':187C,316C 'data':173C 'detail':24C 'differ':306C 'document':68C,150C 'e291b1d9c7f937a0392ee5552b4894d8a9dd32971d30850027442cf34c9d940d':277C 'edit':27C 'entiti':327C 'everi':88C,166C 'fetch':160C 'fetchlatestbaileysvers':217C 'fire':155C 'follow':86C,127C,254C 'forc':125C 'fork':41C,229C 'full':315C 'fulli':290C 'ghsa':7A,15A,275C 'ghsa-malwar':274C 'ghsa-qpp3-3mx8-62m7':6A,14A 'github':113C 'github.com':211C 'github.com/whiskeysockets/baileys':210C 'given':323C 'guarante':331C 'hijack':243C 'homepag':209C 'host':101C 'id':85C,89C 'ident':97C 'immedi':303C 'import':205C 'in-process':188C 'infrastructur':240C 'inspector':34C 'instal':121C,196C,272C,284C,343C 'ip':198C 'issu':83C 'key':295C 'legitim':214C 'level':159C 'lib/index.js':152C 'lib/socket/newsletter.js':51C 'lib/utils/generics.js':219C 'line':30C,52C,153C 'list':99C 'loadnewslett':74C 'main':105C 'makewasocket/makenewslettersocket':69C 'mal':11A 'malici':1A,20B,339C 'malwar':276C 'may':320C 'messag':175C 'mutabl':104C,184C,261C 'network':48C 'never':142C 'new':137C 'newsletterwmexqueri':84C 'npm':5A 'opt':143C 'outsid':326C 'packag':21B,37C,109C,138C,170C,283C,309C,335C 'package.json':207C 'per':22C 'perform':251C 'person':112C,228C 'print':172C 'process':190C 'publish':135C 'qpp3':8A,16A 'raw.githubusercontent.com':79C,163C,225C 'raw.githubusercontent.com/budetzz/mazzbudetzzzzz/refs/heads/main/saluran.json':78C 'raw.githubusercontent.com/z4phdev/baileys/master/src/defaults/baileys-version.json':224C 'raw.githubusercontent.com/z4phdev/client/refs/heads/main/information.json':162C 'redirect':237C 'relay':267C 'remot':183C 'remote-mut':182C 'remov':312C,333C,337C 'repoint':222C 'republish':40C 'requir':167C 'result':341C 'return':90C 'rotat':302C 'run':286C 'schedul':54C 'second':58C 'secret':293C 'set':117C 'settimeout':56C 'silent':242C,266C 'silent-relay':265C 'socket':65C 'softwar':340C 'sourc':23C,31C,273C 'store':296C 'telemetri':234C 'time':133C,200C 'timer':72C 'top':158C 'top-level':157C 'two':46C 'undocu':47C 'updat':233C 'upstream':215C 'url':262C 'use':91C 'version':139C,232C 'version-upd':231C 'via':66C,259C 'whatsapp':64C,96C,248C 'whiskeysockets/baileys':43C 'without':134C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"fix_status":null,"audience":null,"plain_action":null,"pkeys":["baileys"],"ptokens":["baileys","budetzz"],"labels":["critical","malicious","npm","package"],"campaign_type":null,"search_a":"'-2026':12A '-4372':13A '3mx8':9A,17A '62m7':10A,18A 'budetzz/baileys':4A,19A 'code':2A 'ghsa':7A,15A 'ghsa-qpp3-3mx8-62m7':6A,14A 'mal':11A 'malici':1A 'npm':5A 'qpp3':8A,16A","search_b":"'malici':20B 'packag':21B","search_c":"'/account-hijack':268C '/budetzz/mazzbudetzzzzz/refs/heads/main/saluran.json':80C '/whiskeysockets/baileys':212C '/z4phdev/baileys/master/src/defaults/baileys-version.json':226C '/z4phdev/client/refs/heads/main/information.json':164C '0':174C '1':50C '111':53C '2':151C '351':220C '37':154C '90':57C 'account':114C,123C,249C 'action':252C 'add':45C 'addit':206C 'advertis':208C 'also':236C 'amazon':33C 'amazon-inspector':32C 'api':70C 'attack':239C,269C 'authent':95C 'author':110C,186C,203C,258C 'author-control':185C 'axios.get':76C 'beacon':194C 'behavior':49C,147C 'branch':106C 'c79c7b873a8ea61831fdfd7b987de0efbf8944d2fd407a8dca4b70042a3d029c':35C 'call':73C 'chang':130C 'channel':119C,192C,253C 'chosen':255C 'compromis':291C 'comput':279C,299C,307C,319C 'consid':289C 'consol':178C 'construct':62C 'consum':61C,93C,141C,246C 'content':191C 'control':187C,316C 'data':173C 'detail':24C 'differ':306C 'document':68C,150C 'e291b1d9c7f937a0392ee5552b4894d8a9dd32971d30850027442cf34c9d940d':277C 'edit':27C 'entiti':327C 'everi':88C,166C 'fetch':160C 'fetchlatestbaileysvers':217C 'fire':155C 'follow':86C,127C,254C 'forc':125C 'fork':41C,229C 'full':315C 'fulli':290C 'ghsa':275C 'ghsa-malwar':274C 'github':113C 'github.com':211C 'github.com/whiskeysockets/baileys':210C 'given':323C 'guarante':331C 'hijack':243C 'homepag':209C 'host':101C 'id':85C,89C 'ident':97C 'immedi':303C 'import':205C 'in-process':188C 'infrastructur':240C 'inspector':34C 'instal':121C,196C,272C,284C,343C 'ip':198C 'issu':83C 'key':295C 'legitim':214C 'level':159C 'lib/index.js':152C 'lib/socket/newsletter.js':51C 'lib/utils/generics.js':219C 'line':30C,52C,153C 'list':99C 'loadnewslett':74C 'main':105C 'makewasocket/makenewslettersocket':69C 'malici':339C 'malwar':276C 'may':320C 'messag':175C 'mutabl':104C,184C,261C 'network':48C 'never':142C 'new':137C 'newsletterwmexqueri':84C 'opt':143C 'outsid':326C 'packag':37C,109C,138C,170C,283C,309C,335C 'package.json':207C 'per':22C 'perform':251C 'person':112C,228C 'print':172C 'process':190C 'publish':135C 'raw.githubusercontent.com':79C,163C,225C 'raw.githubusercontent.com/budetzz/mazzbudetzzzzz/refs/heads/main/saluran.json':78C 'raw.githubusercontent.com/z4phdev/baileys/master/src/defaults/baileys-version.json':224C 'raw.githubusercontent.com/z4phdev/client/refs/heads/main/information.json':162C 'redirect':237C 'relay':267C 'remot':183C 'remote-mut':182C 'remov':312C,333C,337C 'repoint':222C 'republish':40C 'requir':167C 'result':341C 'return':90C 'rotat':302C 'run':286C 'schedul':54C 'second':58C 'secret':293C 'set':117C 'settimeout':56C 'silent':242C,266C 'silent-relay':265C 'socket':65C 'softwar':340C 'sourc':23C,31C,273C 'store':296C 'telemetri':234C 'time':133C,200C 'timer':72C 'top':158C 'top-level':157C 'two':46C 'undocu':47C 'updat':233C 'upstream':215C 'url':262C 'use':91C 'version':139C,232C 'version-upd':231C 'via':66C,259C 'whatsapp':64C,96C,248C 'whiskeysockets/baileys':43C 'without':134C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-05-20T14:11:17+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"osv-malicious","external_id":"MAL-2026-4372","url":"https://osv.dev/vulnerability/MAL-2026-4372","severity":"critical","published_at":"2026-05-20T14:11:17+00:00","modified_at":"2026-11-12T17:30:40+00:00","first_seen_at":"2026-11-12T18:09:28+00:00","fetched_at":"2026-11-12T18:09:28+00:00","note":null}],"documents":[],"disclosures":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}