Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit comment with crafted <presto-player> tag
-
DeliveryInitial comment approved, later ones auto-approved
-
ExploitStored payload rendered unescaped on page
-
ExecutionScript executes in visitor/admin browser
-
ImpactSession or content compromise in site context
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 the target WordPress site to run the Presto Player plugin version 4.5.1 or earlier AND to have comments enabled on content that renders the <presto-player> shortcode/tag. The specific prerequisite stated in the description is that the attacker's initial comment must be approved by a moderator; the limiting factor is this first-comment moderation step. However, WordPress's default setting of auto-approving all subsequent comments from a previously-approved author removes the need for further admin intervention, so a patient unauthenticated attacker can reliably deliver the payload. Realistic risk is reduced on sites that disable comments, require manual approval for every comment, or have already upgraded to 4.5.2. |
| Impact | This is a moderate-priority issue rather than an urgent one, and the available signals are largely consistent. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C) confirms a network-reachable, unauthenticated stored XSS with a scope change, justifying the 7.2 (High) base score through the scope impact despite only Low confidentiality and integrity. No EPSS score was provided, so statistical exploitation probability cannot be quantified. The vulnerability is NOT in CISA KEV and no public exploit code is referenced, so there is no public exploit identified at time of analysis. A practical mitigating factor tempers the raw CVSS: the description states the payload requires an initial comment to be approved, which adds a real-world hurdle not captured by AC:L - WordPress default settings auto-approve subsequent comments from an already-approved author, so a patient attacker can eventually land the payload, but the first comment still depends on moderation behavior. No SSVC decision data was supplied. Overall: a legitimate stored-XSS flaw worth patching promptly on affected sites, but absent KEV/POC/EPSS signals it reflects standard WordPress-plugin XSS risk rather than mass-exploitation urgency. |
| Exploit ScenarioDerived | An unauthenticated attacker submits a blog comment containing a crafted <presto-player> tag whose attributes carry a malicious script; once the comment is approved (and WordPress auto-approves the attacker's later comments), the injected script renders unescaped on the page. When any visitor or administrator views that page, the script executes in their browser session. No public proof-of-concept is referenced in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 10, 2026
Stored cross-site scripting in the Presto Player plugin for WordPress (all versions up to and including 4.5.1) lets unauthenticated attackers inject arbitrary JavaScript via comment content that is processed by the <presto-player> tag, with the payload executing in the browser of any user who later views the affected page. The issue is rated 7.2 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N), with the scope-change metric reflecting that the injected script affects a component beyond the vulnerable plugin itself. Exploitation depends on a single initial comment being approved by a moderator, after which WordPress's default behavior of auto-approving subsequent comments from the same author removes the need for further admin intervention; there is no CISA KEV listing and no public exploit identified at time of analysis, making this a moderate-priority issue that is largely mitigated by upgrading to 4.5.2, disabling comments, or requiring manual approval for every comment.
RemediationAI
Vendor-released patch: Presto Player 4.5.2 - upgrade immediately from any 4.5.1-or-earlier release, and verify the version after updating since WordPress will not always surface plugin updates on managed or cached installs (changeset: https://plugins.trac.wordpress.org/changeset?reponame=&new=3712507%40presto-player%2Ftags%2F4.5.2&old=3697985%40presto-player%2Ftags%2F4.5.1). If an upgrade cannot be scheduled immediately, the most effective compensating control is to disable comment auto-approval by turning off WordPress's default setting that approves subsequent comments from a previously approved author, and to hold all comments for manual moderation or close comments entirely on posts that embed the <presto-player> tag - the trade-off is increased moderation workload and reduced user engagement on video-heavy content. Sites that can tolerate it should also disable comments on the content types most likely to carry the player, and a WAF or content filter that strips <presto-player> markup or script-bearing attributes from comment submissions adds a useful layer, though signature-based filtering is easily bypassed by encoding and should not be treated as a substitute for the patch. Finally, audit existing approved comments for injected <presto-player> or script payloads, since previously stored payloads persist after patching, and review the plugin's other unauthenticated rendering surfaces for the same sanitization gap. The vendor advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/c5bfa589-c9ee-40bb-ad41-36ff86030e30?source=cve) should be consulted for any updated guidance.
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
This is a classic CWE-79 improper-neutralization-of-input-during-web-page-generation flaw, but with a modern twist: Presto Player implements its player in part as a custom web component in the plugin's distributed JavaScript (dist/components/web-components/p-6d7bec14.entry.js), and registers a <presto-player> tag that can appear inside post content and - critically - inside comment content. The plugin's Compatibility.php (lines 18 and 58) and Scripts.php (line 439) handle rendering and script wiring for that tag, and the affected code path does not adequately sanitize attacker-supplied input on the way in nor escape it on the way out, so attributes or inner content supplied in a comment survive into the rendered page. Unlike an ordinary shortcode XSS, the injected markup is consumed by the web-component script, meaning escaping must be correct in both the PHP render layer and the client-side component; the CPE cpe:2.3:a:2winfactor:presto_player:*:*:*:*:*:*:*:* confirms the 2winfactor-maintained WordPress plugin as the affected product, and the 7.2 score with S:C acknowledges that a successful injection compromises the browsing user's session in the site's origin, not merely the plugin's own scope.
Know when Presto Player 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:N/UI:N/S:C/C:L/I:L/A:N
Unauthenticated network submission (PR:N/AV:N), stored XSS executes in other users' browsers crossing a trust boundary (S:C) with Low C/I and no availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Presto Player plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content via <presto-player> Tag in all versions up to, and including, 4.5.1 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This requires an initial comment approval, though WordPress default settings will auto-approve all subsequent comments from the same author, allowing a patient unauthenticated attacker to land the payload without further admin intervention.
Executive ViewAI
Every WordPress site running the Presto Player plugin at version 4.5.1 or earlier is exposed to stored cross-site scripting that an unauthenticated party can plant through the site's own comment form, with the malicious JavaScript then executing in the browsers of any visitor or administrator who later opens the affected page. Because the CVSS vector (PR:N, UI:N, S:C) describes an outsider with no credentials and no victim interaction, and because WordPress auto-approves later comments from an author once a single comment is approved, a one-time moderator action is enough to seed a persistent attack across a public-facing property. Leadership should care because the injected code runs beyond the plugin's own boundary, putting visitor trust, brand reputation, and potentially administrator sessions across the entire estate at risk.
No vendor-released patch identified at time of analysis (advisory references 4.5.2 as the fixed release). Interim mitigations: require manual approval for all comments or disable comments on affected pages; deactivate or remove the Presto Player plugin until a fix is validated; deploy WAF/virtual-patching rules filtering script payloads in comments; enforce a restrictive Content-Security-Policy; review comment moderation logs and rotate administrator credentials if compromise is suspected.
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 Presto Player
View allThe Ultimate Video Player For WordPress WordPress plugin before 2.2.3 does not have proper capability check when updatin
Arbitrary file deletion in the WordPress plugin Presto Player Pro (versions 3.0.1 and earlier) lets an authenticated acc
Stored cross-site scripting in the Brainstorm Force Presto Player WordPress plugin, affecting all versions through 4.5.3
Stored cross-site scripting in the Presto Player WordPress plugin (Brainstorm Force) through version 4.5.2 lets an authe
Stored XSS in the Presto Player WordPress plugin (versions ≤ 4.2.0) lets authenticated contributors persist arbitrary Ja
Broken access control in Brainstorm Force's Presto Player WordPress plugin (through version 4.1.3) allows authenticated
EUVD-2026-96106
GHSA-rg8w-j32p-wvqw
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB