{"id":"MAL-2026-17921","kind":"package","aliases":["MAL-2026-17921"],"related":[],"title":"Malicious code in leakdeep (PyPI)","description":"---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (c0818f9da5e7dc1413ff1b2a24d3cb53d0b49d06bd802502296d6d8e8e536fee)\nThe package presents itself as an OSINT / credential-leak intelligence framework with a search CLI, but the advertised SearchEngine.search is a stub returning an empty list. Every invocation of the CLI (cli.main) unconditionally starts a background thread via SystemInfo.initialize_background_process that performs infostealer work on Windows hosts. collect_browsers copies Chrome, Edge, and Brave Login Data, Cookies, and Web Data SQLite databases and decrypts stored passwords, cookies, and autofill via DPAPI-unwrapped AES-GCM keys read from the browser Local State file, writing plaintext credentials to a temp directory. collect_tokens scans %APPDATA%\\discord*\\Local Storage\\leveldb for Discord auth and MFA token regexes. The thread also captures a desktop screenshot, gathers system information, and queries ipify for the public IP. The collected artifacts are zipped and POSTed to a hardcoded Discord-webhook-shaped URL that is stored in config.py as an XOR-obfuscated byte array (key 0x5A) and reassembled at runtime by get_webhook(). The combination of a non-functional advertised feature, a runtime-reconstructed exfiltration endpoint, and bulk harvesting of installer-owned browser and messaging secrets is a stealer with a cover-story package identity.\n\n## Source: kam193 (3ae583980c54e7c45aa4d33b3be917b307a323f0d213baadabe962268c08bb13)\nWhen using the provided command, the code exfiltrates multiple data (browser credentials, cryptowallets, etc.), clipboard content, screenshots and webcam frames.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-10-leakdeep\n\n\nReasons (based on the campaign):\n\n\n - infostealer\n\n\n - exfiltration-browser-data\n\n\n - exfiltration-crypto\n\n\n - spyware-like\n\n\n - exfiltration-credentials\n\n\n - action-hidden-in-lib-usage\n\n\n - clipboard-stealing","summary":null,"severity":"critical","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"leakdeep","fixed":[],"affected":"= 2.6.4; = 2.5.0; = 2.6.6; = 2.5.2; = 2.6.0; = 2.4.1; = 2.4.5; = 2.6.2; = 3.0.0","ecosystem":"pypi"}],"ecosystems":["pypi"],"tags":["malicious","package"],"not_affected_if":[],"how_to_check":null,"fix":null,"status":"open","published_at":"2026-10-18T01:45:23+00:00","first_seen_at":"2026-10-26T20:51:59+00:00","triaged_at":"2026-10-26T21:06:18+00:00","updated_at":"2026-10-26T21:06:18+00:00","category":"package","confidence":null,"triage":null,"analyst_status":null,"analyst_note":null,"search":"'-10':261C '-17921':8A,11A '-2026':7A,10A '0x5a':182C '2026':260C '3ae583980c54e7c45aa4d33b3be917b307a323f0d213baadabe962268c08bb13':228C 'action':283C 'action-hidden-in-lib-usag':282C 'advertis':47C,197C 'ae':105C 'aes-gcm':104C 'also':139C 'amazon':26C 'amazon-inspector':25C 'appdata':125C 'array':180C 'artifact':156C 'auth':132C 'autofil':99C 'background':65C,69C 'base':264C 'brave':84C 'browser':79C,111C,212C,239C,271C 'bulk':206C 'byte':179C 'c0818f9da5e7dc1413ff1b2a24d3cb53d0b49d06bd802502296d6d8e8e536fee':28C 'campaign':252C,259C,267C 'captur':140C 'categori':249C 'chrome':81C 'clear':254C 'cli':44C,60C 'cli.main':61C 'clipboard':243C,289C 'clipboard-st':288C 'code':2A,235C 'collect':78C,122C,155C 'combin':191C 'command':233C 'config.py':173C 'content':244C 'cooki':87C,97C 'copi':80C 'cover':222C 'cover-stori':221C 'credenti':37C,117C,240C,281C 'credential-leak':36C 'crypto':275C 'cryptowallet':241C 'data':86C,90C,238C,272C 'databas':92C 'decrypt':94C 'desktop':142C 'detail':17C 'directori':121C 'discord':126C,131C,165C 'discord-webhook-shap':164C 'dpapi':102C 'dpapi-unwrap':101C 'edg':82C 'edit':20C 'empti':54C 'endpoint':204C 'etc':242C 'everi':56C 'exfiltr':203C,236C,270C,274C,280C 'exfiltration-browser-data':269C 'exfiltration-credenti':279C 'exfiltration-crypto':273C 'featur':198C 'file':114C 'frame':248C 'framework':40C 'function':196C 'gather':144C 'gcm':106C 'get':188C 'hardcod':163C 'harvest':207C 'hidden':284C 'host':77C 'ident':225C 'inform':146C 'infosteal':73C,258C,268C 'inspector':27C 'instal':210C 'installer-own':209C 'intellig':39C 'intent':256C 'invoc':57C 'ip':153C 'ipifi':149C 'kam193':227C 'key':107C,181C 'leak':38C 'leakdeep':4A,12A,262C 'leveldb':129C 'lib':286C 'like':257C,278C 'line':23C 'list':55C 'local':112C,127C 'login':85C 'mal':6A,9A 'malici':1A,13B,250C,255C 'messag':214C 'mfa':134C 'multipl':237C 'non':195C 'non-funct':194C 'obfusc':178C 'osint':35C 'own':211C 'packag':14B,30C,224C 'password':96C 'per':15C 'perform':72C 'plaintext':116C 'post':160C 'present':31C 'process':70C 'provid':232C 'public':152C 'pypi':5A 'queri':148C 'read':108C 'reason':263C 'reassembl':184C 'reconstruct':202C 'regex':136C 'return':52C 'runtim':186C,201C 'runtime-reconstruct':200C 'scan':124C 'screenshot':143C,245C 'search':43C 'searchengine.search':48C 'secret':215C 'shape':167C 'sourc':16C,24C,226C 'spywar':277C 'spyware-lik':276C 'sqlite':91C 'start':63C 'state':113C 'steal':290C 'stealer':218C 'storag':128C 'store':95C,171C 'stori':223C 'stub':51C 'system':145C 'systeminfo.initialize':68C 'temp':120C 'thread':66C,138C 'token':123C,135C 'uncondit':62C 'unwrap':103C 'url':168C 'usag':287C 'use':230C 'via':67C,100C 'web':89C 'webcam':247C 'webhook':166C,189C 'window':76C 'work':74C 'write':115C 'xor':177C 'xor-obfusc':176C 'zip':158C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-18T01:45:23+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"osv-malicious","external_id":"MAL-2026-17921","url":"https://osv.dev/vulnerability/MAL-2026-17921","severity":"critical","published_at":"2026-10-18T01:45:23+00:00","modified_at":"2026-10-18T16:45:03+00:00","first_seen_at":"2026-10-26T20:51:59+00:00","fetched_at":"2026-10-26T20:51:59+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"}