CVE-2025-14131
WordPress vulnerability analysis and mitigation

Overview

CVE-2025-14131 is a Reflected Cross-Site Scripting (XSS) vulnerability in the WP Widget Changer plugin for WordPress. It affects all versions up to and including 1.2.5, stemming from the unsanitized use of the $_SERVER['PHP_SELF'] PHP superglobal variable. The vulnerability was disclosed on January 7, 2026, with Wordfence as the CNA. It carries a CVSS v3.1 base score of 6.1 (Medium) (Wordfence).

Technical details

The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation), specifically the direct use of $_SERVER['PHP_SELF'] in output without proper sanitization or escaping, as visible in the plugin source at line 162 of widget_changer.php (WordPress Trac). The PHP_SELF variable reflects the current script's URL path and can be manipulated by an attacker to inject arbitrary JavaScript into the page response. Exploitation requires no authentication or elevated privileges, but does require user interaction — specifically, a victim must be tricked into clicking a crafted malicious link that causes the injected script to execute in their browser context (Wordfence).

Impact

Successful exploitation allows an unauthenticated attacker to execute arbitrary JavaScript in the context of a victim's browser session on the affected WordPress site. This can lead to session cookie theft, credential harvesting, redirection to malicious sites, or defacement of page content as rendered to the victim. The scope is changed (S:C in CVSS), meaning the impact extends beyond the vulnerable component to the victim's browser environment, though availability of the server itself is not affected (Wordfence).

Exploitation steps

  1. Reconnaissance: Identify WordPress sites running the WP Widget Changer plugin (version ≤ 1.2.5) using tools like WPScan, Shodan, or by checking /wp-content/plugins/wp-widget-changer/ for plugin presence.
  2. Craft malicious URL: Construct a URL targeting the vulnerable plugin page that appends a malicious script payload to the path component exploiting PHP_SELF, e.g., https://target.com/wp-admin/options-general.php/[XSS_PAYLOAD]?page=wp-widget-changer, where [XSS_PAYLOAD] is something like %22%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E.
  3. Deliver the link: Send the crafted URL to a target user (e.g., a WordPress administrator) via phishing email, social engineering, or embedded in another page.
  4. Script execution: When the victim clicks the link and loads the page, the unsanitized PHP_SELF value is reflected into the HTML response, causing the injected script to execute in the victim's browser.
  5. Achieve objective: Harvest session cookies, perform actions on behalf of the victim (e.g., create admin accounts, install backdoors), or redirect the victim to an attacker-controlled site (Wordfence, WordPress Trac).

Indicators of compromise

  • Network: HTTP requests to WordPress admin pages associated with the WP Widget Changer plugin (e.g., options-general.php?page=wp-widget-changer) containing URL-encoded script tags or JavaScript payloads in the URL path component.
  • Logs: Web server access logs showing requests with encoded characters (%3C, %3E, %22, <script>) in the URL path targeting plugin-related pages; unusual referrer headers in victim browser requests.
  • Process/Session: Unexpected admin account creation or privilege escalation events in WordPress audit logs shortly after a user visits a suspicious URL; new plugin installations or setting changes not initiated by known administrators.

Mitigation and workarounds

The primary remediation is to update the WP Widget Changer plugin to a version beyond 1.2.5 that addresses the PHP_SELF sanitization issue — users should check the WordPress plugin repository for an updated release. If no patched version is available, site administrators should consider deactivating and removing the plugin until a fix is released. As a general hardening measure, implement a Web Application Firewall (WAF) rule to block reflected XSS attempts targeting WordPress plugin pages (Wordfence).

Community reactions

Wordfence, the CNA for this CVE, published the vulnerability details as part of their threat intelligence feed on January 7, 2026. No significant broader media coverage, researcher commentary, or notable social media discussion has been identified for this vulnerability beyond standard aggregator listings.

Additional resources


SourceThis report was generated using AI

Related WordPress vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-16618CRITICAL9.8
  • improveseo
NoNoAug 04, 2026
CVE-2026-16623HIGH8
  • create-block-theme
NoYesAug 04, 2026
CVE-2026-16547MEDIUM5.9
  • wp-rest-api-log
NoYesAug 04, 2026
CVE-2026-16548MEDIUM5.4
  • bit-assist
NoYesAug 04, 2026
CVE-2026-16546MEDIUM4.3
  • wired-impact-volunteer-management
NoYesAug 04, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management