Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker submits crafted document or query with malicious HTML payload
-
DeliveryApplication indexes content via Xapian
-
ExploitVictim performs search triggering MSet::snippet()
-
ExecutionCorner-case escaping failure preserves raw HTML in snippet output
-
PersistApplication renders snippet in browser without secondary sanitization
-
ImpactVictim browser executes attacker JavaScript
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 three concurrent conditions: (1) the attacker must hold at least low-privilege access sufficient to influence the content indexed by Xapian or the construction of search queries (PR:L per CVSS); (2) the deploying application must call Xapian::MSet::snippet() and render the returned HTML into a web page without a secondary escaping or sanitization step - applications that do not expose snippet() output in a browser context are not vulnerable; (3) a victim user must actively view the affected search results page (UI:R per CVSS). High attack complexity (AC:H) further limits exploitation: the attacker must craft input that triggers the specific missed corner case in the HTML escaping routine rather than the already-fixed general path. Applications using Xapian purely server-side for relevance ranking without rendering snippet() output in HTML are unaffected. |
| Impact | The NVD CVSS 3.1 score of 4.4 (AV:N/AC:H/PR:L/UI:R/S:C) accurately reflects this vulnerability's constrained real-world risk. Three factors suppress exploitability: high attack complexity (AC:H) requires hitting a specific corner case in the escaping logic; low privileges (PR:L) mean an attacker must be able to influence indexed content or query construction; and user interaction (UI:R) requires a victim to render the malicious snippet in a browser. The scope change (S:C) is notable and elevates severity slightly - successful exploitation crosses the trust boundary into the victim's browser session. No EPSS score was provided in the input data, so probabilistic exploitation likelihood cannot be independently assessed. The absence of a KEV listing and lack of reported POC code further reduce near-term urgency. Overall this is a real but lower-priority XSS in a library component, primarily relevant to web-facing applications built on Xapian that display snippet() output without a secondary sanitization layer. |
| Exploit ScenarioDerived | An attacker with low-level access - such as the ability to submit documents for indexing or craft search queries - inserts content containing a specific HTML character sequence that the snippet() corner case fails to escape. When a victim user performs a search and the application renders the resulting snippet in their browser without further sanitization, the malicious payload executes as JavaScript in the victim's session. No public proof-of-concept code has been identified, but the root cause is documented and the earlier CVE-2018-0499 fix provides a partial roadmap for understanding the escaping logic. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 20, 2026
Incomplete HTML escaping in Xapian::MSet::snippet() within xapian-core exposes web applications using this search library to cross-site scripting attacks via a missed corner case of the previously patched CVE-2018-0499. Affected versions include all xapian-core releases before 2.1.0 and before 1.4.32. No public exploit code has been identified and this vulnerability is not listed in the CISA KEV catalog, but applications that render snippet() output directly into web pages without additional sanitization are at real risk.
RemediationAI
Upgrade xapian-core to version 2.1.0 or later (development series) or to version 1.4.32 or later (stable series), as documented in the Xapian developer mailing list announcement at https://lists.xapian.org/pipermail/xapian-devel/2026-August/003429.html and the security fix tracker at https://trac.xapian.org/wiki/SecurityFixes/2018-07-02. Debian users should monitor https://bugs.debian.org/1144490 for updated package availability. If patching is not immediately possible, a compensating control is to apply a secondary HTML sanitization layer in any application code that renders MSet::snippet() output into a web page - for example, running the snippet output through a strict HTML-encoding function before inserting it into page HTML; note this adds application-layer complexity and may affect snippet formatting. Audit all code paths in dependent applications that call MSet::snippet() and display the result in a browser context.
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
Xapian is an open-source probabilistic information retrieval library (CPE: cpe:2.3:a:xapian:xapian-core:*:*:*:*:*:*:*:*) widely used in Linux-ecosystem applications for full-text search. The Xapian::MSet::snippet() API generates HTML-highlighted excerpts from matched documents for display in search result UIs. The vulnerable logic resides in queryparser/termgenerator_internal.cc. CWE-79 (Improper Neutralization of Input During Web Page Generation) is the root cause: a specific corner case in the HTML escaping routine allows special characters in document content or query terms to survive into the rendered snippet as raw HTML. This is a recurrence of CVE-2018-0499, which patched XSS in the same function - the 2026 issue reflects a missed branch in the original fix rather than a new design flaw.
Know when Xapian Core 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
AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
AC:H reflects the specific corner-case trigger required; PR:L captures need for content-submission access; S:C and UI:R are correct for browser-rendered XSS with no availability impact.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
1DescriptionCVE.org
A cross-site scripting vulnerability in queryparser/termgenerator_internal.cc in Xapian xapian-core before 2.1.0 and before 1.4.32 exists due to incomplete HTML escaping by Xapian::MSet::snippet(). NOTE: this issue exists because of a missed corner case of CVE-2018-0499.
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.
More in Xapian Core
View allSame weakness CWE-79 – Cross-site Scripting (XSS)
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Module for Package Hub 15 SP7 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS Extended Security | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP5 | Affected |
| SUSE Linux Enterprise Desktop 12 SP1 | Affected |
| SUSE Linux Enterprise Desktop 12 SP2 | Affected |
| SUSE Linux Enterprise Desktop 12 SP3 | Affected |
| SUSE Linux Enterprise Desktop 12 SP4 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Affected |
| SUSE Linux Enterprise Server 12 SP1 | Affected |
| SUSE Linux Enterprise Server 12 SP2 | Affected |
| SUSE Linux Enterprise Server 12 SP3 | Affected |
| SUSE Linux Enterprise Server 12 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 12 SP4 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP1 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP2 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP3 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP4 | Affected |
| SUSE Linux Enterprise Software Development Kit 12 SP5 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-63667
GHSA-955x-jgcw-hcxh
NVD
CVE.org
EPSS
Exploit-DB