Chatwoot
CVE-2025-12246
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker crafts malicious URL with Link parameter
-
DeliveryDelivers URL to admin via email/social engineering
-
ExploitAdmin clicks link in Chatwoot context
-
ExecutionIframeLoader component renders unsanitized Link argument
-
PersistJavaScript payload executes in admin session
-
ImpactAttacker gains admin privileges or data access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that an administrator or authorized user with access to the Chatwoot Admin Interface clicks a malicious link crafted to include JavaScript payloads in the Link parameter of the IframeLoader component. The vulnerability does not require authentication bypass - the attacker must trick an already-logged-in admin into clicking the link. No special server-side configuration or non-default settings are required; the flaw exists in the default codebase of Chatwoot 4.7.0 and earlier. Limiting factors include the requirement for user interaction (UI:P from CVSS), the need for the victim to be an admin or privileged user, and the fact that the attack payload must be delivered via a channel trusted by the target (email, messaging, etc.). Modern browsers with XSS protections may partially mitigate reflected XSS variants, but stored XSS payloads persist and execute reliably. |
| Impact | This vulnerability presents a low real-world risk despite public exploit availability, supported by converging signals: CVSS 2.1 indicates minimal direct severity, EPSS 0.03% (10th percentile) suggests very low exploitation probability at scale, and the CVSS vector (AV:N/AC:L/PR:N/UI:P) confirms that while remote and unauthenticated, successful exploitation requires user interaction (UI:P) - a clickable link sent to an admin. The low impact (VI:L, all other impacts null) limits damage to information disclosure. The publicly available POC suggests technical feasibility but does not correlate with active mass exploitation given the EPSS score. This is a classic low-severity XSS that requires social engineering; defenders should prioritize based on actual admin exposure to untrusted link sources rather than raw CVSS. Notably, vendor non-responsiveness (contact confirmed but no reply) may indicate low priority assignment by the maintainers themselves. |
| Exploit ScenarioDerived | An attacker crafts a malicious URL containing JavaScript in the Link parameter (e.g., |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 29, 2026
Cross-site scripting (XSS) in Chatwoot up to version 4.7.0 allows remote attackers to inject malicious scripts via the Link argument in the IframeLoader.vue Admin Interface component, requiring user interaction to trigger. The vulnerability has a low CVSS score (2.1) and EPSS percentile (10%) but publicly available exploit code exists, indicating the attack is straightforward to execute once a victim clicks a crafted link.
RemediationAI
Upgrade Chatwoot to a version newer than 4.7.0 immediately. Verify the patched version on the official Chatwoot GitHub repository or release notes. If immediate upgrade is not feasible, implement network-level mitigations: restrict admin interface access to trusted IP ranges or use a Web Application Firewall (WAF) rule to block requests with encoded or suspicious characters in the Link parameter. Additionally, educate administrators to avoid clicking links from untrusted sources in Chatwoot contexts, and consider disabling or sandboxing the IframeLoader component if it is not essential for operations. Patch effectiveness and post-upgrade version confirmation should be validated against the official Chatwoot security advisory once the vendor responds.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability resides in the IframeLoader.vue component within Chatwoot's Admin Interface, a Vue.js-based web application frontend. The flaw is a reflected or stored XSS vulnerability (CWE-79: Improper Neutralization of Input During Web Page Generation) where user-supplied input in the Link parameter is not properly sanitized before being rendered in the DOM. This allows an attacker to inject arbitrary JavaScript code that executes in the context of an authenticated admin's browser session. The affected product is Chatwoot, a customer engagement and support platform, identified via CPE:2.3:a:chatwoot:chatwoot:*.*.*.*.*.*.*
Know when Chatwoot gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
DescriptionCVE.org
A security flaw has been discovered in chatwoot up to 4.7.0. This issue affects some unknown processing of the file app/javascript/shared/components/IframeLoader.vue of the component Admin Interface. The manipulation of the argument Link results in cross site scripting. The attack can be executed remotely. The vendor was contacted early about this disclosure but did not respond in any way.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)CVE.org
Impact varies for each individual vulnerability in the application. Rated critical severity (CVSS 9.8), this vulnerabili
Unauthenticated arbitrary blob creation in Chatwoot before 4.16.0 lets remote attackers abuse the ActiveStorage direct-u
chatwoot is vulnerable to Inefficient Regular Expression Complexity. Rated high severity (CVSS 7.5), this vulnerability
Improper Authorization in GitHub repository chatwoot/chatwoot prior to 2.8. Rated high severity (CVSS 7.1), this vulnera
Cross-site Scripting (XSS) - DOM in GitHub repository chatwoot/chatwoot prior to 2.7.0. Rated medium severity (CVSS 6.1)
Insecure Storage of Sensitive Information in GitHub repository chatwoot/chatwoot prior to 2.6.0. Rated medium severity (
Cross-site Scripting (XSS) - Stored in GitHub repository chatwoot/chatwoot prior to 2.5.0. Rated medium severity (CVSS 5
A stored cross-site scripting (XSS) vulnerability exists in chatwoot/chatwoot versions 3.0.0 to 3.5.1. Rated medium seve
SQL injection in Chatwoot versions 2.2.0 through 4.11.1 allows any authenticated account user to execute arbitrary SQL v
Pre-Account Takeover in Chatwoot's OmniAuth integration affects all releases from 2.14.0 through 4.12.x, allowing an att
Chatwoot's multi-tenant API fails to restrict the `account_id` parameter in four controllers (Portals, Automation Rules,
Server-side request forgery in Chatwoot's Shopify OAuth integration allows an authenticated user to make the Chatwoot se
NVD
CVE.org
EPSS
VulDB
GitHub PoC
Exploit-DB