Skip to main content

Chatwoot CVE-2026-44707

| EUVDEUVD-2026-31916 MEDIUM
Unverified Ownership (CWE-283)
2026-05-26 GitHub_M
6.8
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
6.8 MEDIUM
AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

3
Source Code Evidence Fetched
Jun 08, 2026 - 11:41 vuln.today
Analysis Generated
Jun 08, 2026 - 11:41 vuln.today
Patch available
May 26, 2026 - 19:02 EUVD

DescriptionCVE.org

Chatwoot is a customer engagement suite. From 2.14.0 to before 4.13.0, a Pre-Account Takeover (Pre-ATO) vulnerability existed in Chatwoot's authentication flow. Because email confirmation was not enforced before an account became usable, an attacker could pre-register an email address they did not own and set a password. If the legitimate owner of that email later signed in to Chatwoot using Google OAuth (or another OmniAuth provider), the OAuth flow silently confirmed the existing account without invalidating the attacker's pre-set credentials. The attacker could then continue to log in with the password they had originally chosen and access any data the victim subsequently entered into the dashboard, including PII, API keys, and other sensitive information. This vulnerability is fixed in 4.13.0.

AnalysisAI

Pre-Account Takeover in Chatwoot's OmniAuth integration affects all releases from 2.14.0 through 4.12.x, allowing an attacker who pre-registers a victim's email address to retain persistent login access after the legitimate owner authenticates via Google OAuth. The OAuth callback controller failed to invalidate attacker-set password credentials when confirming a pre-existing unconfirmed account, leaving the attacker's session viable indefinitely. No public exploit identified at time of analysis and EPSS is 0.04% (12th percentile), consistent with SSVC's 'Exploitation: none' finding, though SSVC rates technical impact as 'total' given the attacker gains full workspace access including PII, API keys, and conversation history.

Technical ContextAI

The root cause is CWE-283 (Unverified Ownership): Chatwoot's Devise-based OmniAuth callback controller at app/controllers/devise_overrides/omniauth_callbacks_controller.rb called skip_confirmation! during an OAuth sign-in to mark an account as confirmed, but never checked whether a persisted, unconfirmed record with attacker-controlled credentials already existed for that email. Because skip_confirmation! sets confirmed_at in place, the account transitioned to confirmed status while retaining whatever password was previously set by the pre-registrant. The PR #13878 fix introduces two guard methods: oauth_user_needs_password_reset? (detects persisted-but-unconfirmed accounts) and set_random_password_if_oauth_user (overwrites the stored password digest with a cryptographically random value satisfying Devise secure_password requirements before confirmation proceeds), neutralizing any attacker-set credential. The affected CPE is cpe:2.3:a:chatwoot:chatwoot:*:*:*:*:*:*:*:*, encompassing the full version range from 2.14.0 onward until the fix.

RemediationAI

Upgrade to Chatwoot 4.13.0, the vendor-confirmed fixed release documented in security advisory GHSA-8qxm-4p4p-cfhm and implemented via commit 211fb1102dd208daee414cff1b8d71ea27ac5ebf (https://github.com/chatwoot/chatwoot/commit/211fb1102dd208daee414cff1b8d71ea27ac5ebf) and PR #13878 (https://github.com/chatwoot/chatwoot/pull/13878). If immediate upgrade is not possible, disabling Google OAuth and all OmniAuth providers in Chatwoot's installation settings removes the trigger condition entirely; note this forces all users to password-based login and will break any existing SSO or social-login workflows. As a targeted compensating control, administrators can audit for unconfirmed user accounts (accounts where confirmed_at is null) with email addresses matching known user or corporate domains, then force-confirm legitimate accounts or delete suspicious pre-registered ones - this closes the attack window for already-staged pre-ATO attempts. Neither workaround substitutes for patching, as the underlying confirmation logic flaw persists.

CVE-2022-3741 CRITICAL POC
9.8 Oct 28

Impact varies for each individual vulnerability in the application. Rated critical severity (CVSS 9.8), this vulnerabili

CVE-2026-63765 HIGH POC
8.8 Jul 23

Unauthenticated arbitrary blob creation in Chatwoot before 4.16.0 lets remote attackers abuse the ActiveStorage direct-u

CVE-2021-3649 HIGH POC
7.5 Jul 16

chatwoot is vulnerable to Inefficient Regular Expression Complexity. Rated high severity (CVSS 7.5), this vulnerability

CVE-2022-2901 HIGH POC
7.1 Sep 06

Improper Authorization in GitHub repository chatwoot/chatwoot prior to 2.8. Rated high severity (CVSS 7.1), this vulnera

CVE-2022-0542 MEDIUM POC
6.1 Aug 19

Cross-site Scripting (XSS) - DOM in GitHub repository chatwoot/chatwoot prior to 2.7.0. Rated medium severity (CVSS 6.1)

CVE-2022-1021 MEDIUM POC
5.4 Aug 19

Insecure Storage of Sensitive Information in GitHub repository chatwoot/chatwoot prior to 2.6.0. Rated medium severity (

CVE-2022-1022 MEDIUM POC
5.4 Apr 21

Cross-site Scripting (XSS) - Stored in GitHub repository chatwoot/chatwoot prior to 2.5.0. Rated medium severity (CVSS 5

CVE-2024-0640 MEDIUM POC
4.8 Mar 20

A stored cross-site scripting (XSS) vulnerability exists in chatwoot/chatwoot versions 3.0.0 to 3.5.1. Rated medium seve

CVE-2026-44706 HIGH
8.5 May 26

SQL injection in Chatwoot versions 2.2.0 through 4.11.1 allows any authenticated account user to execute arbitrary SQL v

CVE-2026-72719 MEDIUM
6.7 Aug 10

Chatwoot's multi-tenant API fails to restrict the `account_id` parameter in four controllers (Portals, Automation Rules,

CVE-2025-12246 LOW POC
2.1 Oct 27

Cross-site scripting (XSS) in Chatwoot up to version 4.7.0 allows remote attackers to inject malicious scripts via the L

CVE-2023-2109 MEDIUM
6.1 Apr 17

Cross-site Scripting (XSS) - DOM in GitHub repository chatwoot/chatwoot prior to 2.14.0. Rated medium severity (CVSS 6.1

Share

CVE-2026-44707 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy