Skip to main content

Ditty CVE-2026-94461

| EUVDEUVD-2026-85479 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-09-23 Patchstack GHSA-8vxg-8vp6-6xqg
6.5
CVSS 3.1 · Vendor: Patchstack
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain Contributor account on target WP site
  2. Delivery
    Inject XSS payload into unsanitized Ditty field
  3. Exploit
    Store payload in plugin content
  4. Execution
    Admin views affected page in wp-admin
  5. Persist
    Script executes in admin browser session
  6. Impact
    Session hijack or forged admin actions

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 authenticated WordPress account with at least Contributor-level privileges on a site running Ditty <= 3.1.69 (per PR:L and the description), and it further requires a higher-privileged victim (e.g. an administrator) to view the page rendering the injected payload (UI:R). This is not exploitable pre-authentication or against a site that does not grant untrusted users Contributor accounts. What limits real-world risk: the need for a foothold/insider account, the dependence on victim interaction, and the fact that impact is confined to browser-context script execution rather than direct server compromise.

Impact

This is a genuine but modest-priority issue: a stored/authenticated Cross-Site Scripting flaw (CWE-79) in the Ditty WordPress plugin reported by Patchstack. The CVSS 6.5 (MEDIUM) vector CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L tells a consistent story: network-reachable and low-complexity, but gated on two meaningful factors - PR:L means the attacker must already hold a low-privilege authenticated account (Contributor role, per the description title), and UI:R means a victim (typically an administrator or higher-privileged user) must load the page rendering the injected payload. The S:C (scope change) reflects that script injected by a low-privileged Contributor executes in the browser session of a different, higher-privileged user - the classic privilege-boundary crossing that justifies the elevated base score. No EPSS score, no CISA KEV listing, and no public POC are provided, so exploitation status is 'no public exploit identified at time of analysis.' No SSVC decision data is supplied. The C:L/I:L/A:L impacts appear slightly inflated: browser-context XSS realistically yields low confidentiality and integrity impact, but the A:L (availability) rating is questionable for a reflected/stored XSS with no clear availability-degradation mechanism - I would lean toward A:N (~6.4). Overall this is a real but lower-tier issue requiring an insider or a foothold account plus victim interaction, not a mass-exploitable unauthenticated RCE.

Exploit ScenarioDerived

An attacker who has registered or obtained a low-privilege Contributor account on a WordPress site running Ditty <= 3.1.69 injects a malicious JavaScript payload into a Ditty field that is not properly sanitized. When an administrator later views the affected content in wp-admin, the script executes in the admin's authenticated browser session, enabling actions such as cookie/session theft or forging admin requests. No public proof-of-concept exploit is identified in the provided data.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 23, 2026

Stored cross-site scripting in the Ditty WordPress plugin (versions through 3.1.69) allows an authenticated attacker holding at least Contributor-level privileges on a site to plant script that later executes in the browser of a higher-privileged user, such as an administrator, who views the affected content. Exploitation requires both a low-privileged foothold account and victim interaction, which keeps this a modest-priority issue (CVSS 6.5, AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N), and no public exploit code or confirmed active exploitation was identified at time of analysis.

RemediationAI

The primary fix is to upgrade Ditty to a release newer than 3.1.69 once the vendor publishes one; the affected boundary is ≤3.1.69, so any patched build will necessarily sit above that version, but no fixed version number is confirmed in the supplied data, so verify the exact patched release against the Patchstack advisory (https://patchstack.com/database/wordpress/plugin/ditty-news-ticker/vulnerability/wordpress-ditty-plugin-3-1-69-cross-site-scripting-xss-vulnerability?_s_id=cve) before relying on a specific number. Because no fixed version is confirmed, treat the following as compensating controls until patching is possible: first, audit Contributor-and-above accounts and tighten role provisioning so unreviewed third parties cannot author Ditty content (trade-off: reduces editorial flexibility and requires an ongoing review process); second, re-review and re-sanitize any existing Ditty items authored by low-privileged users, since stored payloads persist after patching and will continue to fire for visitors (trade-off: manual content review effort, and removal of legitimate but unsafe HTML); third, deactivate the Ditty plugin entirely if it is not actively used, which removes the attack surface outright (trade-off: loss of the ticker/display functionality); fourth, deploy a web application firewall or WordPress security plugin with XSS filtering and a Content-Security-Policy that disallows inline script, which can blunt execution but may break legitimate plugin rendering and is not a substitute for the vendor fix. No vendor-released patch version is identified in the provided data, so confirm availability with the vendor directly.

Affected VersionsENISA

Ditty n/a ≤3.1.69

Affected Packages

euvd ditty no fix

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

Ditty is a WordPress plugin published by Metaphor Creations; the supplied CPE cpe:2.3:a:metaphorcreations:ditty:*:*:*:*:*:*:*:* and the EUVD record (EUVD-2026-85479) both scope the affected range as all releases up to and including 3.1.69. The root cause is CWE-79, improper neutralization of input during web page generation, meaning user-supplied content is stored by the plugin and later rendered into a page without adequate output encoding or sanitization, producing a persistent (stored) XSS rather than a reflected one. The assessed vector AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N reflects that the attacker needs an authenticated account (PR:L, consistent with the Contributor role named in the description), that the payload only fires when a victim views the rendered page (UI:R), and that the scope is changed (S:C) because script execution escapes the vulnerable component into the victim's browser session. The plugin's typical role in WordPress content workflows (a Contributor can author content that is later reviewed or displayed by higher-privileged users) is what makes the low-privilege-then-high-privilege-victim pattern viable. The flaw was reported through Patchstack, whose advisory is the primary source cited (https://patchstack.com/database/wordpress/plugin/ditty-news-ticker/vulnerability/wordpress-ditty-plugin-3-1-69-cross-site-scripting-xss-vulnerability?_s_id=cve). Impact is confined to browser-context script execution in the victim's session rather than direct server compromise, data exfiltration beyond the session, or remote code execution.

Know when Ditty 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

Vendor (Patchstack) PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L
vuln.today AI 5.4 MEDIUM

Contributor account required (PR:L), victim admin must render payload (UI:R), scope changes as script runs in a higher-priv session (S:C); no availability mechanism, so A:N.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (Patchstack).

CVSS VectorVendor: Patchstack

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
Low

DescriptionCVE.org

Contributor Cross Site Scripting (XSS) in Ditty <= 3.1.69 versions.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Medium
Popular WordPress news-ticker/dynamic-content plugin, common but not universal
Data Quality
3 sources
Confidence: Low

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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 Ditty

View all
CVE-2025-8085 HIGH POC
8.6 Sep 08

The Ditty WordPress plugin before 3.1.58 lacks authorization and authentication for requests to its displayItems endpoin

CVE-2024-6715 MEDIUM POC
6.1 Aug 23

The Ditty WordPress plugin before 3.1.46 re-introduced a previously fixed security issue (https://wpscan.com/vulnerabili

CVE-2023-4148 MEDIUM POC
6.1 Sep 25

The Ditty WordPress plugin before 3.1.25 does not sanitise and escape some parameters and generated URLs before outputti

CVE-2022-0533 MEDIUM POC
6.1 Mar 07

The Ditty (formerly Ditty News Ticker) WordPress plugin before 3.0.15 is affected by a Reflected Cross-Site Scripting (X

CVE-2024-3939 MEDIUM POC
5.4 May 27

The Ditty WordPress plugin before 3.1.36 does not sanitise and escape some of its settings, which could allow high privi

CVE-2024-13357 MEDIUM POC
4.8 May 15

The Ditty WordPress plugin before 3.1.52 does not sanitise and escape some of its settings, which could allow high privi

CVE-2024-9600 MEDIUM POC
4.8 Nov 21

The Ditty WordPress plugin before 3.1.47 does not sanitise and escape some of its settings, which could allow high privi

CVE-2024-5575 MEDIUM POC
4.7 Jul 13

The Ditty WordPress plugin before 3.1.43 does not sanitise and escape some of its blocks' settings, which could allow hi

CVE-2024-6710 MEDIUM
5.4 Aug 05

The Ditty WordPress plugin before 3.1.45 does not sanitise and escape some parameters, which could allow users with a ro

CVE-2023-23874 MEDIUM
5.4 May 03

Auth. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, low attack complexity. No vendor pat

CVE-2026-81274 MEDIUM
5.3 Aug 27

Broken access control in the Ditty WordPress plugin (versions up to and including 3.1.67) allows subscriber-level authen

CVE-2026-27355 MEDIUM
5.3 Jul 23

Broken access control in the Ditty WordPress plugin (all versions through 3.1.66) permits unauthenticated remote attacke

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy