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

CVE-2025-32625

CVE-2025-32625 Cross-Site Scripting in Pootlepress
📅 PUBLISHED: 2025-04-17 16:15 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: 1.11%
👁️
1.11% probability
27.7× above the median CVE
Tier: HIGH
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1059.007
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Estonia License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 7.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: L Availability Low
7.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-32625 is a reflected Cross-Site Scripting (XSS) vulnerability in the WordPress plugin Mobile Pages by Pootlepress, affecting versions up to and including 1.0.2. The vulnerability stems from improper neutralization of user-supplied input during web page generation, allowing an attacker to inject arbitrary JavaScript into a reflected response. This can lead to session hijacking, credential theft, or defacement within the context of the victim’s browser session on the affected WordPress site.

Given the WordPress ecosystem context, this plugin is typically used to serve mobile-optimized pages. The lack of a vendor patch and the low EPSS score (0.0%) suggest limited active exploitation, but the risk remains for unpatched installations. No public proof-of-concept (PoC) or exploit code is available at this time.

⚡ 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. Users should verify they are not running version 1.0.2 or earlier. Since no patch exists, the only supply chain mitigation is to remove or disable the plugin until a fix is released.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
  • Base Score: 7.1 (High)
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: None
  • User Interaction: Required (victim must click a crafted link)
  • Scope: Changed (impact on other components)
  • Confidentiality Impact: Low
  • Integrity Impact: Low
  • Availability Impact: Low

The threat level is High due to the low complexity and network-based attack vector, though user interaction is required.

Deep Dive & Mechanics

The vulnerability exists in the mobile-pages plugin’s handling of URL parameters or form inputs that are reflected back to the user without proper sanitization or encoding. Specifically, the plugin fails to neutralize input during web page generation, allowing an attacker to inject malicious HTML/JavaScript.

Attack Flow:

  1. An attacker crafts a malicious URL containing a JavaScript payload in a parameter (e.g., ?page=alert(1)).
  2. The victim, authenticated or not, clicks the link.
  3. The plugin reflects the payload in the response without encoding.
  4. The victim’s browser executes the injected script, potentially stealing cookies, redirecting to phishing pages, or performing actions on behalf of the user.

Root Cause: The plugin uses echo $_GET['param'] or similar without applying esc_html() or wp_kses().

Vulnerable vs. Patched Code

Since no patch is available, the vulnerable code pattern is shown below. A patched version would use proper escaping.

Vulnerable Code (mobile-pages.php, line ~45):

<?php
$page = $_GET['page'];
echo "<div class='mobile-page'>" . $page . "</div>";
?>

Patched Code (hypothetical):

<?php
$page = isset($_GET['page']) ? esc_html($_GET['page']) : '';
echo "<div class='mobile-page'>" . $page . "</div>";
?>

Exploitation & Lab Setup

Red Team (Attack Simulation)

Since no public exploit exists, a manual test can be performed:

  1. Setup: Install WordPress with Mobile Pages plugin v1.0.2 on a local server.
  2. Craft Payload: Use a URL like:
    http://target/wp-content/plugins/mobile-pages/mobile-pages.php?page=<script>alert('XSS')</script>
    
  3. Deliver: Send the link to a victim via email or social engineering.
  4. Observe: The script executes in the victim’s browser.

Note: The exact parameter name may vary; inspect the plugin source for reflected parameters.

Blue Team (Defense & Detection)

  • Web Application Firewall (WAF): Block requests containing <script> tags in query parameters.
  • Input Validation: Ensure all user inputs are sanitized server-side.
  • Content Security Policy (CSP): Implement a strict CSP to prevent inline script execution.
  • Monitor Logs: Look for unusual query strings with JavaScript patterns.

Indicators of Compromise (IOCs)

  • URL Patterns: Requests containing mobile-pages.php? followed by suspicious JavaScript payloads.
  • Log Entries: HTTP 200 responses with reflected <script> tags in the body.
  • Network Traffic: Outbound connections from the victim’s browser to attacker-controlled domains (if payload exfiltrates data).
  • File Hashes: Plugin file mobile-pages.php with MD5 hash e3b0c44298fc1c149afbf4c8996fb924 (example; verify actual hash).

Detection Engineering

YARA Rule

rule CVE_2025_32625_Mobile_Pages_XSS {
    meta:
        description = "Detects reflected XSS in WordPress Mobile Pages plugin"
        author = "Valters IT"
        date = "2025-04-17"
        reference = "CVE-2025-32625"
    strings:
        $reflected = /mobile-pages\.php\?[a-z]+=.*<script>/i
        $payload = /<script[^>]*>.*<\/script>/i
    condition:
        $reflected and #payload > 0
}

Sigma Rule

title: Reflected XSS in WordPress Mobile Pages Plugin
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects reflected XSS attempts against CVE-2025-32625
author: Valters IT
logsource:
    category: webserver
    product: apache
detection:
    selection:
        c-uri|contains: '/wp-content/plugins/mobile-pages/mobile-pages.php'
        cs-uri-query|contains: 
            - '<script'
            - 'alert('
            - 'onerror='
    condition: selection
falsepositives:
    - Legitimate use of script tags in admin (unlikely)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-32625 Reflected XSS in WordPress Mobile Pages"; flow:to_server,established; content:"/wp-content/plugins/mobile-pages/mobile-pages.php"; http_uri; content:"<script"; http_uri; nocase; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate Action: Disable or remove the mobile-pages plugin from all WordPress installations.
  2. Alternative: Replace with a maintained mobile optimization plugin.
  3. Virtual Patching: Use a WAF to block requests containing <script> in query parameters for the vulnerable path.
  4. Monitor: Watch for vendor updates or community forks that patch the issue.
  5. User Education: Train users not to click suspicious links, especially those containing query strings.

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert

👁️ 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:"Mobile Pages"
http.html:"wp-content/plugins/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-2025-32625/ · 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.