Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privileged content account
-
DeliverySubmit gallery item with crafted payload
-
ExploitPayload stored unsanitized by module
-
ExecutionVictim views gallery page
-
ImpactScript executes in victim browser session
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 an attacker to hold a Drupal account with privileges to submit or edit content handled by the PhotoSwipe - Responsive JavaScript Modal Image Gallery module (CVSS PR:L), and a second user must subsequently view the page containing the stored payload for it to execute (CVSS UI:R). The exact input field, caption, or gallery setting that stores the unsanitized data is not described in the available sources. Limiting factors: this is not remote-unauthenticated - an account with content-contribution rights is a prerequisite, victim interaction is needed, impact is limited to partial confidentiality/integrity in the victim's browser context (no availability impact), and the module is patched (fixed in 5.0.9 per the EUVD range), so updating removes the exposure. Only affected installations are those running PhotoSwipe module versions below 5.0.9. |
| Impact | This is a genuinely low-to-moderate priority issue, and the signals are internally consistent rather than conflicting. The CVSS 3.1 base score of 4.6 (Medium) reflects a stored XSS requiring an authenticated contributor (PR:L) and victim interaction (UI:R), with only partial confidentiality and integrity impact and no availability impact (C:L/I:L/A:N, scope unchanged). All secondary signals reinforce the low urgency: EPSS is 0.16% (5th percentile), SSVC records Exploitation:none, Automatable:no, and Technical Impact:partial, and there is no CISA KEV listing and no public exploit reference in the supplied data. The only mildly elevating signal is the vuln.today 'this_month' decision label, which suggests scheduled remediation rather than emergency action - consistent with a patched, authenticated, interaction-dependent web flaw. In short, this is a real but routine stored-XSS bug in a Drupal contrib module, not a high-urgency threat; the network attack vector (AV:N) overstates exposure because PR:L and UI:R meaningfully constrain exploitation. |
| Exploit ScenarioDerived | An attacker who already holds a low-privileged Drupal account with permission to create or edit gallery content submits an image/node containing a crafted script payload that is stored by the PhotoSwipe module and not properly neutralized. When another user - for example an administrator or site visitor - views the affected gallery page, the stored script executes in their browser session in the context of the site. No public exploit code is identified at the time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 22, 2026
Stored cross-site scripting in the Drupal contributed module PhotoSwipe - Responsive JavaScript Modal Image Gallery (versions below 5.0.9) lets a user who can create or edit content handled by the module persist an unsanitized payload that executes in the browser of another user who later views the affected page. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N, base 4.6) confirms an authenticated content contributor is required and that a second user must interact with the page, with impact limited to partial confidentiality and integrity inside the victim's session and no availability effect. No public exploit code is identified at time of analysis and CISA SSVC records exploitation as none and not automatable, with EPSS at 0.16% (5th percentile); the vendor has released a fix in 5.0.9, so exposure is removed by updating.
RemediationAI
Vendor-released patch: upgrade the PhotoSwipe - Responsive JavaScript Modal Image Gallery module to version 5.0.9, which is the fixed release per the EUVD range and the Drupal security advisory at https://www.drupal.org/sa-contrib-2026-131; Drupal contributed-module updates are applied through the site's normal module update workflow, and updating removes the exposure entirely. Until the update is deployed, the practical interim measure consistent with the assessed prerequisite (PR:L) is to narrow the set of roles permitted to submit or edit content handled by the module, since a content-contribution account is required to store the payload, at the cost of restricting editorial workflow; the second prerequisite, a victim viewing the affected page (UI:R), cannot be eliminated while the vulnerable renderer remains in place. No separate vendor workaround, configuration flag, or input filter is documented in the available sources beyond applying the module update.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-79 (Improper Neutralization of Input During Web Page Generation), specifically the stored variant: content submitted through the Drupal PhotoSwipe module is saved and later emitted into gallery markup without adequate escaping, so script content survives in the database and runs in the security context of the Drupal site when the page is rendered for a viewer. The module is a Drupal contributed integration of the PhotoSwipe responsive JavaScript modal image gallery, and the CPE cpe:2.3:a:drupal:photoswipe_-_responsive_javascript_modal_image_gallery:*:*:*:*:*:*:*:* covers all releases in the affected branch up to the fixed version. The CVSS vector describes severity only; it does not establish the exact input field, caption, or gallery setting that stores the unsanitized data, and the trigger details are not described in the available sources. Exploitation requires a Drupal account holding privileges to submit or edit content processed by the module (PR:L) plus a victim user opening the page containing the stored payload (UI:R); the assessment notes the flaw is not remotely exploitable without authentication.
Know when Photoswipe Responsive Javascript Modal Image Gallery 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:L/PR:L/UI:R/S:U/C:L/I:L/A:N
Stored XSS requires an authenticated content contributor (PR:L) and a victim viewing the page (UI:R); impact is limited script execution in the browser, so C:L/I:L/A:N.
Primary rating from Vendor (drupal).
CVSS VectorVendor: drupal
Lifecycle Timeline
3DescriptionCVE.org
Improper Neutralization of Input During Web Page Generation ("Cross-site Scripting") vulnerability in Drupal PhotoSwipe - Responsive JavaScript Modal Image Gallery allows Stored XSS. This issue affects PhotoSwipe - Responsive JavaScript Modal Image Gallery versions: from 0.0.0 to 5.0.9.
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-107868
GHSA-hpqh-524w-2rhc
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB