CVE-2026-28509
Received Received - Intake
Cross-Site Scripting in LangBot Web UI Before

Publication date: 2026-03-06

Last updated on: 2026-03-16

Assigner: GitHub, Inc.

Description
LangBot is a global IM bot platform designed for LLMs. Prior to version 4.8.7, LangBot’s web UI renders user-supplied raw HTML using rehypeRaw, which can lead to a cross-site scripting (XSS) vulnerability. This issue has been patched in version 4.8.7.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-06
Last Modified
2026-03-16
Generated
2026-06-16
AI Q&A
2026-03-06
EPSS Evaluated
2026-06-15
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
langbot langbot to 4.8.7 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

CVE-2026-28509 is a Cross-Site Scripting (XSS) vulnerability in LangBot versions prior to 4.8.6. The vulnerability occurs because LangBot’s web UI uses the ReactMarkdown component with the rehypeRaw plugin to render user-supplied raw HTML content without proper sanitization.

Specifically, this insecure rendering happens in two features: the Upload Local plugin, where README.md files of installed extensions are rendered, and the Debug Chat feature, where user input or chatbot responses are rendered. Since the content is not sanitized, an attacker can embed malicious HTML or JavaScript payloads, such as iframes with embedded scripts.

An attacker can exploit this by crafting malicious README.md files or chatbot inputs that include scripts to steal session tokens or API keys by sending them to external webhooks, leading to credential theft and compromising user confidentiality.

Impact Analysis

[{'type': 'paragraph', 'content': "This vulnerability can lead to the theft of sensitive information such as session tokens and API credentials stored in the user's localStorage. If an attacker successfully exploits the vulnerability, they can execute malicious scripts in the context of the user's browser session."}, {'type': 'paragraph', 'content': 'The impact includes unauthorized access to user accounts or services, compromising confidentiality. The vulnerability has a CVSS v3.1 base score of 6.3, indicating moderate severity, with a high impact on confidentiality but low impact on integrity and no impact on availability.'}] [1]

Compliance Impact

I don't know

Detection Guidance

[{'type': 'paragraph', 'content': 'This vulnerability can be detected by checking if your LangBot installation is running a version prior to 4.8.7, as these versions render user-supplied raw HTML without proper sanitization, leading to XSS risks.'}, {'type': 'paragraph', 'content': 'Specifically, you can look for the presence of vulnerable components such as the Upload Local plugin rendering README.md files or the Debug Chat feature rendering user inputs with ReactMarkdown and rehypeRaw without sanitization.'}, {'type': 'paragraph', 'content': 'To detect exploitation attempts or presence of malicious payloads, you can monitor HTTP requests or logs for suspicious iframe or script tags embedded in plugin README files or chat inputs.'}, {'type': 'paragraph', 'content': 'While no specific detection commands are provided in the resources, general approaches include:'}, {'type': 'list_item', 'content': 'Check the installed LangBot version: `langbot --version` or check the application UI for version info.'}, {'type': 'list_item', 'content': "Search plugin README.md files for suspicious iframe or script tags, e.g., `grep -r '<iframe' /path/to/langbot/plugins/`."}, {'type': 'list_item', 'content': 'Monitor web UI inputs or logs for unexpected HTML or JavaScript payloads.'}] [1]

Mitigation Strategies

The immediate mitigation step is to upgrade LangBot to version 4.8.7 or later, where the vulnerability has been patched by adding proper sanitization of rendered Markdown content using the rehype-sanitize plugin.

If upgrading immediately is not possible, avoid installing untrusted plugins or extensions, and refrain from using the Upload Local plugin and Debug Chat features with untrusted input.

Additionally, monitor and restrict user inputs that could contain malicious HTML or JavaScript payloads to reduce the risk of exploitation.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-28509. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart