Skip to main content

SiteOrigin CSS CVE-2026-107764

| EUVDEUVD-2026-102676 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-10-16 Wordfence GHSA-67h6-9gc5-xw7x
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

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

  1. Access
    Submit comment on target site
  2. Delivery
    Encode payload in Website/URL field
  3. Exploit
    esc_url() preserves entity-encoded characters
  4. Execution
    Payload stored in database
  5. Persist
    Victim loads injected page, browser DOM-decodes at sink
  6. Impact
    Arbitrary script executes in victim 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 accept comments from unauthenticated visitors (open/public comment forms) and to use the SiteOrigin CSS plugin ≤1.6.7. The attacker must place an HTML-entity-encoded payload specifically in the comment 'Website' (comment_author_url) field; the flaw hinges on esc_url() preserving those encoded entities so the value survives storage. Execution is not immediate - it is triggered only when a user accesses a page where the stored comment URL is rendered into the plugin's DOM sink, where the browser decodes the entities into executable markup. Limiting factors: comments must be enabled and reachable unauthenticated, a victim must subsequently load the injected page, and the payload only fires at the specific entity-decoding sink, so sites that disable comments or do not render the affected field are not exposed.

Impact

The input CVSS 3.1 score of 7.2 (High) reflects a network-reachable (AV:N), low-complexity (AC:L), unauthenticated (PR:N) stored XSS with a changed scope (S:C) and limited confidentiality/integrity impact (C:L/I:L/A:N) - the elevated score is driven primarily by the scope change (payload executes in other users' browsers) and lack of authentication, not by severe technical impact. No EPSS probability, CISA KEV listing, or public exploit code is present in the provided intelligence, so there is no public exploit identified at time of analysis and no evidence of active exploitation; this tempers the real-world urgency considerably versus the raw 7.2. The realistic priority is MODERATE: it is a genuine unauthenticated stored XSS worth patching, but execution depends on a victim rendering an injected page and on the specific DOM-decode sink in the plugin, so it is not drop-everything-critical. A notable nuance: the vulnerability is DOM-based and relies on WordPress core's esc_url() preserving HTML-entity-encoded characters, meaning standard output-escaping assumptions do not block it - defenders relying on esc_url() as a control should verify. Absence of EPSS/KEV/POC is a data gap, not a safety guarantee; treat exploitability as plausible once the patch diff (1.6.7→1.6.8) is public and reversed.

Exploit ScenarioDerived

An unauthenticated attacker submits a blog comment on a site running SiteOrigin CSS ≤1.6.7, placing an HTML-entity-encoded script payload in the comment 'Website' (comment_author_url) field; esc_url() preserves the encoded entities so the payload survives storage. When a user later loads a page where that comment URL is rendered into the vulnerable DOM sink, the browser decodes the entities into executable markup and runs the attacker's script in the victim's session. No public exploit code is identified at time of analysis, though the fix commit (1.6.7→1.6.8) is publicly visible and could aid payload reconstruction.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.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 – Oct 16, 2026

Stored DOM-based cross-site scripting in SiteOrigin CSS 1.6.7 and earlier allows unauthenticated attackers to inject scripts through the WordPress comment 'Website' (comment_author_url) field, executing when a victim loads a page where the plugin renders the stored comment URL into a DOM sink. Exploitation requires the site to accept comments from unauthenticated visitors and to use an affected plugin version; the CVSS 3.1 score of 7.2 reflects network reachability, low complexity, no authentication, and a scope change, with limited confidentiality and integrity impact. No public exploit code was identified at time of analysis.

RemediationAI

Vendor-released patch: SiteOrigin CSS 1.6.8, indicated by the upstream GitHub comparison 1.6.7...1.6.8; update the plugin to 1.6.8 or later through the WordPress plugin update mechanism. If immediate patching is not possible, deactivate the plugin, or disable comments site-wide or require authentication for commenting to remove the unauthenticated write path through comment_author_url; also consider filtering comment author URLs to reject or decode HTML-entity-encoded payloads before storage, with the trade-off that aggressive filtering may affect legitimate URLs. Disabling comments or the plugin changes site functionality by removing visitor engagement or custom CSS editing, so prioritize the patched release. Review the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/b0ff9652-1b45-43d6-949a-92bfeaee96d3?source=cve for affected-version details.

Affected VersionsENISA

SiteOrigin CSS 0 ≤1.6.7

Affected Packages

euvd siteorigin_css 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

The flaw is CWE-79 (improper neutralization of input during web page generation), specifically a stored DOM-based XSS chain. WordPress core's esc_url() preserves HTML entity-encoded characters, so an entity-encoded payload placed in the comment author URL survives storage. SiteOrigin CSS then uses that value in JavaScript/DOM contexts, referenced in the plugin's js/inspector.js line 280 and so-css.php lines 69 and 899, where the browser DOM-decodes the entities into executable markup. The affected CPE cpe:2.3:a:gpriday:siteorigin_css:*:*:*:*:*:*:*:* identifies the SiteOrigin CSS plugin. The CVSS vector AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N confirms unauthenticated remote exploitation, with execution occurring in other users' browsers at the DOM sink rather than immediately upon comment submission.

Know when Siteorigin Css 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 (Wordfence) PRIMARY 7.2 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 7.2 HIGH

Unauthenticated remote comment submission (AV:N/PR:N/AC:L); stored payload executes in other users' browsers crossing a trust boundary (S:C) with limited C/I and no availability impact.

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

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

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

DescriptionCVE.org

The SiteOrigin CSS plugin for WordPress is vulnerable to Stored DOM-Based Cross-Site Scripting via the 'url (comment_author_url)' parameter in all versions up to, and including, 1.6.7 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 is possible because WordPress core's esc_url() preserves HTML entity-encoded characters, allowing a crafted entity-encoded payload in the comment 'Website' field to survive storage and be DOM-decoded by the browser into executable markup at the sink.

Executive ViewAI

Why It Matters

SiteOrigin CSS versions 1.6.7 and earlier, a WordPress plugin, introduces a stored DOM-based cross-site scripting issue that can be triggered through the public comment 'Website' field and execute when affected pages render that stored URL. Any WordPress site using an affected version and allowing public comments is exposed to script injection in visitors' browsers, which can degrade trust, enable limited data or content manipulation, and create cleanup and notification burdens. No public exploit identified at time of analysis; no vendor-released patch identified at time of analysis.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include disabling or restricting the WordPress comment 'Website' field and public comments, deactivating/removing SiteOrigin CSS 1.6.7 and earlier where feasible, applying WAF or virtual patching rules to block script injection via comment_author_url, sanitizing/encoding rendered comment URLs, monitoring for suspicious comment activity, and limiting plugin installation to vetted, maintained components.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Medium
popular WordPress styling plugin, widely installed but not universal
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

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 HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
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.

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