CVE-2024-54410 Overview
CVE-2024-54410 is a Cross-Site Request Forgery (CSRF) vulnerability [CWE-352] in the eagerterrier SOPA Blackout WordPress plugin. The flaw affects all versions up to and including 1.4. Successful exploitation allows attackers to inject persistent JavaScript that executes in the browsers of users who view affected pages. The issue chains CSRF with Stored Cross-Site Scripting (XSS), turning a forged request from a deceived administrator into a persistent client-side payload on the WordPress site.
Critical Impact
An unauthenticated attacker can trick an authenticated administrator into submitting a forged request that stores malicious JavaScript on the site, leading to session theft, account compromise, or content modification for any visitor.
Affected Products
- eagerterrier SOPA Blackout WordPress plugin (sopa-blackout)
- All versions from n/a through 1.4
- WordPress sites with the plugin installed and active
Discovery Timeline
- 2024-12-16 - CVE-2024-54410 published to the National Vulnerability Database (NVD)
- 2026-04-23 - Last updated in NVD database
Technical Details for CVE-2024-54410
Vulnerability Analysis
The SOPA Blackout plugin exposes administrative actions that modify plugin settings without verifying request authenticity. The plugin does not validate WordPress nonces or check request origin headers on state-changing endpoints. This omission allows an attacker-controlled page to forge requests that the victim's browser submits with valid session cookies. Because the affected settings are rendered back to site pages without proper output encoding, an attacker can store arbitrary JavaScript that executes in any visitor's browser session.
The chained Stored XSS expands impact beyond a single forged action. Once injected, the payload persists across page loads and affects every user who renders the compromised content. See the Patchstack Vulnerability Report for additional technical context.
Root Cause
The root cause is missing CSRF protection on plugin settings handlers, combined with insufficient sanitization and escaping of stored input. WordPress provides wp_nonce_field() and check_admin_referer() for CSRF defense, neither of which the vulnerable code paths enforce. Stored values are emitted into HTML contexts without esc_html() or esc_attr(), enabling script execution.
Attack Vector
The attack is network-based and requires user interaction. An attacker hosts a malicious page containing a hidden form or JavaScript that auto-submits a POST request to the vulnerable plugin endpoint. When an authenticated WordPress administrator visits the attacker's page, the browser sends the forged request with valid authentication cookies. The plugin processes the request and stores the attacker-controlled JavaScript payload, which then executes for every subsequent visitor to the affected page.
Detection Methods for CVE-2024-54410
Indicators of Compromise
- Unexpected <script> tags, event handlers, or obfuscated JavaScript stored in SOPA Blackout plugin configuration fields
- WordPress administrator accounts with unexplained session activity or modified plugin settings
- Outbound requests from visitor browsers to unfamiliar domains after loading pages where the plugin is active
- HTTP referer headers in plugin POST requests originating from external domains rather than wp-admin
Detection Strategies
- Audit the wp_options table and plugin-specific storage for HTML or JavaScript content in SOPA Blackout settings fields
- Inspect web server access logs for POST requests to plugin admin endpoints with external Referer headers
- Deploy a web application firewall rule to flag administrative form submissions missing valid WordPress nonces
- Monitor rendered page output for injected scripts that do not match the site's expected JavaScript inventory
Monitoring Recommendations
- Enable WordPress audit logging to capture plugin setting changes with timestamps and user attribution
- Alert on Content Security Policy (CSP) violation reports indicating inline script execution from unexpected sources
- Track administrator browser sessions for navigation patterns that precede unauthorized configuration changes
- Review plugin update status weekly and correlate any setting modifications with authorized change tickets
How to Mitigate CVE-2024-54410
Immediate Actions Required
- Deactivate and remove the SOPA Blackout plugin from any WordPress installation running version 1.4 or earlier
- Audit all plugin settings for stored JavaScript and remove injected payloads from the database
- Rotate WordPress administrator passwords and invalidate active sessions for accounts that may have visited untrusted sites
- Review user roles and revoke unnecessary administrative privileges to reduce CSRF blast radius
Patch Information
No fixed version is identified in the available advisory data. The Patchstack Vulnerability Report lists the plugin as vulnerable through version 1.4. Administrators should remove the plugin until the maintainer releases a verified fix.
Workarounds
- Uninstall the SOPA Blackout plugin and replace its functionality with a maintained alternative
- Deploy a web application firewall with WordPress-specific rules that block CSRF attempts against admin-ajax and admin-post endpoints
- Enforce a strict Content Security Policy that disallows inline scripts and restricts script sources to trusted origins
- Require administrators to use separate browser profiles or sessions when performing WordPress administration tasks
# Configuration example: restrictive CSP header to limit Stored XSS impact
Header set Content-Security-Policy "default-src 'self'; script-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

