Summary
CVE-2026-82880 is an XML External Entity (XXE) injection vulnerability in YaCy Search Server through version 1.941. Multiple XML parsers used by the crawler fail to disable external entity resolution, allowing a remote, unauthenticated attacker to exfiltrate local file contents from the server. The flaw is rated HIGH severity.
Technical details
- Root cause: YaCy’s SAX-based XML parsers (used by the SVG, FreeMind/MM, and OpenSearch description parsers) instantiate
SAXParserFactorywithout hardeningsetFeature()calls, leaving DOCTYPE and external entity resolution enabled. - Trigger conditions: An attacker publishes a document (e.g., a crafted SVG, FreeMind, or OpenSearch description file) containing a
DOCTYPEdeclaration with aSYSTEMentity pointing to a local file path. - Attack vector: Network-reachable via YaCy’s crawl pipeline — no authentication or user interaction required. When YaCy crawls and indexes the malicious document, the vulnerable parser resolves the external entity.
- Impact: Contents of local files (e.g.,
/etc/passwdor other server-readable files) can be read and exfiltrated into the search index, resulting in confidentiality loss. No impact to integrity or availability was reported.
Affected software
- YaCy Search Server: all versions through 1.941 (inclusive)
Severity
- CVSS v3.1: 7.5 (HIGH) —
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CVSS v4.0: 8.7 (HIGH) —
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Mitigation and recommended actions
- Immediate: Upgrade to a YaCy Search Server build that includes the fix committed at
3c3a307e8b7a0ebbc4d1e6b10898b52e15c0cd44, which disables DOCTYPE declarations and external general/parameter entities in the affected parsers. - If no patch is available yet: Restrict or disable crawling of untrusted domains and untrusted document uploads (SVG, FreeMind, OpenSearch description files); block outbound network access from the YaCy host to reduce exfiltration paths; monitor for crawler requests to unexpected local file paths.
How IONIX identifies potentially affected assets
IONIX matches the following signals against data already collected when it crawled the asset; identifying the technology sends no request beyond that crawl.
- Page title:
YaCy 'search page name': Search Page

