Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessInject javascript: Markdown link into chat content
-
ExploitContent rendered without link validation
-
ExecutionVictim clicks crafted link
-
ImpactScript executes in embedding page context
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 the application embedding Deep Chat (through version 2.5.1) render attacker-influenced Markdown - specifically content delivered via AI responses, the addMessage API, or loaded conversation history - because RemarkableConfig.createNew turns off Remarkable's built-in link scheme validation, permitting javascript: URIs by default. The decisive limiting factor is user interaction: the victim must actively click the malicious link (UI:A) for the script to fire; the link does not auto-execute. A second practical prerequisite (AT:P) is that the attacker must first get crafted Markdown into the chat stream, which typically means control over the AI backend, the ability to supply history, or a reflection path for user content. No authentication is required of the attacker (PR:N), and the insecure configuration is the component's default behavior rather than an opt-in setting. |
| Impact | This is a genuinely low-priority issue despite being a real XSS flaw. The input CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:A) scores only 2.1, and the signals are internally consistent: network-reachable but requires active user interaction (the victim must click a crafted link) and an attack requirement (AT:P) that the attacker first get malicious Markdown into the chat stream. Impact is confined to the subsequent/embedding page (VC:N/VI:N/VA:N with SC:L/SI:L), i.e. script execution in the page context rather than compromise of the Deep Chat component's own data. No KEV listing and no confirmed public exploit code are present in the provided data, so exploitation status is 'no public exploit identified at time of analysis' - though a detailed third-party technical writeup (hackmd) and a VulnCheck advisory exist and could lower the effort to reproduce. No EPSS score or SSVC decision data was supplied, so probability-of-exploitation and automatability cannot be weighed. The realistic risk is a targeted client-side attack dependent on an attacker already controlling or influencing message/history content, not a mass-exploitable server flaw. |
| Exploit ScenarioDerived | An attacker who can influence content rendered by Deep Chat - for example a malicious or compromised AI backend, user-supplied chat history, or any text passed to addMessage - embeds a Markdown link using the javascript: scheme. Because RemarkableConfig.createNew disables Remarkable's link validation, the link is rendered intact; when the victim clicks it, arbitrary JavaScript executes in the context of the embedding page. No public exploit code is identified, but a third-party technical writeup documenting the flaw is referenced. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 11, 2026
Cross-site scripting in Deep Chat through 2.5.1 enables remote attackers to inject javascript: links into AI responses, addMessage content, or loaded history because the embedded Remarkable markdown renderer disables link scheme validation; victims must click the crafted link for script execution in the embedding page. The flaw requires the attacker to first place malicious Markdown into the chat stream-typically via control over the AI backend, supplied history, or a reflection path-and no authentication is needed, though user interaction is decisive. This is a genuinely low-priority issue despite being a real XSS flaw, and no public exploit code was identified at time of analysis.
RemediationAI
No vendor-released patch identified at time of analysis. As a compensating control, developers embedding Deep Chat through 2.5.1 should override RemarkableConfig.createNew to re-enable Remarkable's link scheme validation, or apply an HTML sanitizer such as DOMPurify to the rendered Markdown output to strip javascript: URIs before insertion into the DOM; this requires custom code and ongoing maintenance. Alternatively, restrict and sanitize all Markdown sources-AI responses, the addMessage API, and loaded conversation history-so attacker-controlled content cannot introduce dangerous link schemes, and instruct users not to click unexpected links in chat; this reduces exposure but does not eliminate the flaw if any injection path remains. Disabling Markdown link rendering entirely, if configurable, will prevent exploitation but breaks legitimate links. Monitor the vendor GitHub repository (https://github.com/OvidijusParsiunas/deep-chat) and the VulnCheck advisory (https://www.vulncheck.com/advisories/deep-chat-through-2.5.1-xss-via-markdown-link-validation-bypass) for a patched release.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Deep Chat is a web component that renders chat messages, including Markdown, using the Remarkable parser. CVE-2026-108852 is a CWE-79 (improper neutralization of input during web page generation) issue caused by RemarkableConfig.createNew in the component's source (component/src/views/chat/messages/remarkable/remarkableConfig.ts, lines 74-78) turning off Remarkable's built-in link scheme validation. As a result, Markdown links with javascript: URIs are accepted by default and rendered as clickable links. The CPE cpe:2.3:a:ovidijusparsiunas:deep_chat:*:*:*:*:*:*:*:* confirms that all versions through 2.5.1 are affected. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N) and the independently assessed CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N) both indicate that exploitation requires attacker-controlled Markdown to reach the renderer (AT:P) and a victim to click the malicious link (UI:A/UI:R), with low confidentiality and integrity impact only to the embedding page (scope changed). No authentication is required of the attacker, and the insecure configuration is the component's default behavior rather than an opt-in setting.
Know when Deep Chat 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:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-delivered stored/reflected XSS needing a victim click (UI:R); script runs in the embedding page beyond the vulnerable component (S:C) with limited confidentiality and integrity impact, no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Deep Chat through 2.5.1 contains a cross-site scripting vulnerability that allows attackers to inject javascript: links because RemarkableConfig.createNew disables Remarkable link validation. Attackers can place crafted Markdown links in AI responses, addMessage content, or loaded history to execute script in the embedding page when victims click them.
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.
EUVD-2026-97003
GHSA-qvgf-g4p8-x92p
NVD
CVE.org
EPSS
Exploit-DB