{"id":"CVE-2026-128333","kind":"vulnerability","aliases":["CVE-2026-128333"],"related":[],"title":"listmonk: password reset skips TOTP check, letting attackers log in as admin","description":"listmonk 6.0.0 before 7.0.0-beta.2 contains an authentication bypass vulnerability in doResetPassword that skips TOTP verification after a password reset. Attackers who can complete a reset, such as by reading the victim's reset email, obtain fully authenticated sessions including Super Admin without the TOTP code.","summary":"listmonk 6.0.0 before 7.0.0-beta.2 skips two-factor (TOTP) verification after a password reset. An attacker who can complete a reset, for example by reading the victim's reset email, gets a fully authenticated session, including Super Admin.","severity":"critical","cvss":9.1,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["email-marketing","listmonk","package","self-hosted","totp"],"not_affected_if":["totp-disabled","version-outside-range"],"how_to_check":"- Check the installed listmonk version against the range `6.0.0` to `7.0.0-beta.2` (exclusive)\n- Confirm whether TOTP two-factor login is enabled on admin accounts\n- Check who can read the mailbox that receives listmonk password reset emails","fix":"- listmonk: upgrade to `7.0.0-beta.2` or later","status":"open","published_at":"2026-11-13T10:18:13+00:00","first_seen_at":"2026-11-13T10:47:34+00:00","triaged_at":"2026-11-13T10:48:37+00:00","updated_at":"2026-11-13T10:48:37+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-11-13T10:48:37Z","model":"claude-haiku-5-5","output":{"fix":"- listmonk: upgrade to `7.0.0-beta.2` or later","reach":"internet","title":"listmonk: password reset skips TOTP check, letting attackers log in as admin","impact":"high","summary":"listmonk 6.0.0 before 7.0.0-beta.2 skips two-factor (TOTP) verification after a password reset. An attacker who can complete a reset, for example by reading the victim's reset email, gets a fully authenticated session, including Super Admin.","audience":"businesses","category":"package","nicknames":[],"who_cares":["listmonk","self-hosted","email-marketing","totp"],"confidence":0.8,"fix_status":"available","needs_auth":"no","worst_case":"attacker gets Super Admin session without the TOTP code","analyst_note":"","how_to_check":"- Check the installed listmonk version against the range `6.0.0` to `7.0.0-beta.2` (exclusive)\n- Confirm whether TOTP two-factor login is enabled on admin accounts\n- Check who can read the mailbox that receives listmonk password reset emails","plain_action":"","product_name":"","needs_analyst":false,"not_affected_if":["version-outside-range","totp-disabled"],"who_is_affected":"Teams that run listmonk 6.0.0 before 7.0.0-beta.2 and use TOTP two-factor login on admin accounts are exposed, since the reset path skips the TOTP check. Anyone who can read the reset email (or otherwise complete a reset) can get an admin session. Instances on other versions, or without TOTP enabled, are not covered by this flaw.","user_interaction":"no","product_ecosystem":"","needs_special_setup":"yes","severity_if_unknown":"critical"},"cost_usd":0.000755,"input_tokens":4624,"output_tokens":585,"severity_before":"critical"},"analyst_status":null,"analyst_note":null,"search":"'-128333':15A,18A '-2026':14A,17A '6.0.0':29B,68C '7.0.0':31B,70C 'admin':12A,66B,108C 'attack':8A,44B,87C 'authent':62B,74C,104C 'beta.2':32B,71C 'bypass':75C 'check':6A 'code':112C 'complet':47B,90C 'contain':72C 'cve':13A,16A 'doresetpassword':78C 'email':20B,58B,101C 'email-market':19B 'exampl':51B 'factor':36B 'fulli':61B,103C 'get':59B 'host':26B 'includ':64B,106C 'let':7A 'listmonk':1A,22B,28B,67C 'log':9A 'market':21B 'obtain':102C 'packag':23B 'password':2A,41B,85C 'read':53B,96C 'reset':3A,42B,49B,57B,86C,92C,100C 'self':25B 'self-host':24B 'session':63B,105C 'skip':4A,33B,80C 'super':65B,107C 'totp':5A,27B,37B,81C,111C 'two':35B 'two-factor':34B 'verif':38B,82C 'victim':55B,98C 'vulner':76C 'without':109C","nicknames":[],"mitigations":[],"who_affected":"Teams that run listmonk 6.0.0 before 7.0.0-beta.2 and use TOTP two-factor login on admin accounts are exposed, since the reset path skips the TOTP check. Anyone who can read the reset email (or otherwise complete a reset) can get an admin session. Instances on other versions, or without TOTP enabled, are not covered by this flaw.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["critical","emailmarketing","listmonk","package","selfhosted","totp"],"campaign_type":null,"search_a":"'-128333':15A,18A '-2026':14A,17A 'admin':12A 'attack':8A 'check':6A 'cve':13A,16A 'let':7A 'listmonk':1A 'log':9A 'password':2A 'reset':3A 'skip':4A 'totp':5A","search_b":"'6.0.0':29B '7.0.0':31B 'admin':66B 'attack':44B 'authent':62B 'beta.2':32B 'complet':47B 'email':20B,58B 'email-market':19B 'exampl':51B 'factor':36B 'fulli':61B 'get':59B 'host':26B 'includ':64B 'listmonk':22B,28B 'market':21B 'packag':23B 'password':41B 'read':53B 'reset':42B,49B,57B 'self':25B 'self-host':24B 'session':63B 'skip':33B 'super':65B 'totp':27B,37B 'two':35B 'two-factor':34B 'verif':38B 'victim':55B","search_c":"'6.0.0':68C '7.0.0':70C 'admin':108C 'attack':87C 'authent':74C,104C 'beta.2':71C 'bypass':75C 'code':112C 'complet':90C 'contain':72C 'doresetpassword':78C 'email':101C 'fulli':103C 'includ':106C 'listmonk':67C 'obtain':102C 'password':85C 'read':96C 'reset':86C,92C,100C 'session':105C 'skip':80C 'super':107C 'totp':81C,111C 'verif':82C 'victim':98C 'vulner':76C 'without':109C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2026-11-13T10:18:13+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-128333","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-128333","severity":null,"published_at":"2026-11-13T10:18:13+00:00","modified_at":"2026-11-13T10:18:13+00:00","first_seen_at":"2026-11-13T10:47:34+00:00","fetched_at":"2026-11-13T10:47:34+00:00","note":null}],"documents":[{"id":145459,"url":"https://github.com/knadh/listmonk/commit/14b25edc31614a1d661e3af72b3d46b887931534","title":"Patch: github.com","kind":"other","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":145457,"url":"https://github.com/knadh/listmonk/releases/tag/v7.0.0-beta.2","title":"Release notes: github.com","kind":"release","source":"nvd","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Release notes: github.com"},{"id":145461,"url":"https://www.vulncheck.com/advisories/listmonk-6.0.0-before-7.0.0-beta.2-2fa-bypass-via-password-reset-flow","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"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"}