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

CVE-2025-32691

CVE-2025-32691 Server-Side Request Forgery in Blubrry
📅 PUBLISHED: 2025-04-09 17: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: 0.34%
👁️
0.34% probability
8.4× 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.
Country: Estonia License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 4.9
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: H Privileges Required High
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: N Integrity None
A: N Availability None
4.9
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-32691 is a Server-Side Request Forgery (SSRF) vulnerability in the Blubrry PowerPress Podcasting plugin for WordPress, affecting versions up to and including 11.12.6. This flaw allows an authenticated attacker with high privileges (such as an Administrator) to make the vulnerable server send crafted HTTP requests to internal or external resources, potentially leading to information disclosure, internal network scanning, or access to cloud metadata endpoints. The vulnerability is classified as CWE-918: Server-Side Request Forgery (SSRF). As of this report, no official patch has been released, and no public proof-of-concept (PoC) code is available. The EPSS score is 0.0%, indicating a low probability of exploitation in the wild at this time, but the risk remains significant for high-value WordPress installations.

⚡ 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 are advised to monitor the plugin's update channel for a patched version. Since no patch is available, the primary mitigation is to disable or remove the plugin until a fix is released.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
  • Base Score: 4.9 (Medium)
  • Attack Vector (AV): Network (N) – The vulnerability can be exploited remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): High (H) – The attacker must have administrative-level access to the WordPress instance.
  • User Interaction (UI): None (N) – No user action is needed.
  • Scope (S): Unchanged (U) – The vulnerable component and the impacted component are the same.
  • Confidentiality (C): High (H) – Successful exploitation can lead to disclosure of sensitive internal data.
  • Integrity (I): None (N) – No data modification is possible.
  • Availability (A): None (N) – No denial-of-service impact.

Threat Level: Medium. While the CVSS score is moderate, the requirement for high privileges reduces the likelihood of widespread exploitation. However, in environments where administrative accounts are compromised, this SSRF can be a stepping stone for deeper internal network attacks.

Deep Dive & Mechanics

The PowerPress Podcasting plugin provides functionality to import or fetch podcast feeds from external URLs. The SSRF vulnerability likely resides in a feature that allows an administrator to specify a URL for feed retrieval or media file downloading. The plugin fails to properly validate or sanitize the user-supplied URL, allowing an attacker to craft requests to internal IP addresses (e.g., http://169.254.169.254/ for cloud metadata) or internal services (e.g., http://localhost:9200/ for Elasticsearch).

Attack Flow:

  1. An attacker with administrative privileges accesses the PowerPress settings page.
  2. The attacker locates a field that accepts a URL (e.g., "Podcast Feed URL" or "Import from URL").
  3. The attacker inputs a malicious URL pointing to an internal resource, such as http://169.254.169.254/latest/meta-data/.
  4. The plugin's server-side code makes an HTTP request to that URL without proper validation.
  5. The response (e.g., cloud metadata) is either displayed back to the attacker or stored in the database, leading to information disclosure.

Root Cause: The plugin uses a function like wp_remote_get() or file_get_contents() with user-supplied input without restricting the URL scheme or destination IP range.

Vulnerable vs. Patched Code

Since no official patch is available, the following is a hypothetical comparison based on common SSRF fixes.

Vulnerable Code (Conceptual):

$feed_url = $_POST['feed_url'];
$response = wp_remote_get( $feed_url );
// Process response...

Patched Code (Conceptual):

$feed_url = $_POST['feed_url'];
// Validate URL scheme
if ( ! in_array( parse_url( $feed_url, PHP_URL_SCHEME ), array( 'http', 'https' ) ) ) {
    wp_die( 'Invalid URL scheme.' );
}
// Block internal IPs
$host = parse_url( $feed_url, PHP_URL_HOST );
if ( filter_var( $host, FILTER_VALIDATE_IP ) && ! filter_var( $host, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE ) ) {
    wp_die( 'URL points to a private or reserved IP range.' );
}
// Use a whitelist of allowed domains if possible
$allowed_domains = array( 'example.com', 'feeds.example.com' );
if ( ! in_array( $host, $allowed_domains ) ) {
    wp_die( 'Domain not allowed.' );
}
$response = wp_remote_get( $feed_url );
// Process response...

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • A WordPress instance with PowerPress Podcasting <= 11.12.6 installed and activated.
  • Administrative credentials (username/password) for the WordPress admin panel.

Exploitation Steps:

  1. Log in to the WordPress admin panel as an administrator.
  2. Navigate to PowerPress > Settings (or a similar menu).
  3. Locate a field that accepts a URL for feed import or media fetching (e.g., "Podcast Feed URL").
  4. Enter a malicious URL targeting an internal resource. For example:
    • AWS metadata: http://169.254.169.254/latest/meta-data/
    • Internal service: http://localhost:8080/admin
    • Internal network: http://192.168.1.1/config
  5. Click "Save" or "Import" to trigger the request.
  6. Observe the response. If the plugin displays the fetched content, the SSRF is successful.

Example Payload:

http://169.254.169.254/latest/meta-data/iam/security-credentials/admin

Note: Since no public PoC exists, this is a theoretical exploitation path. The exact field name may vary.

Blue Team (Defensive)

Detection & Prevention:

  1. Network Segmentation: Ensure that the WordPress server cannot reach sensitive internal services (e.g., cloud metadata endpoints, internal databases).
  2. Web Application Firewall (WAF): Deploy a WAF with rules to block requests to private IP ranges (e.g., 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 169.254.0.0/16).
  3. Input Validation: Implement server-side validation to restrict URLs to a whitelist of allowed domains and schemes.
  4. Least Privilege: Ensure that the WordPress application runs with the minimum necessary permissions. Avoid running the web server as root.
  5. Monitoring: Monitor outbound HTTP requests from the WordPress server for anomalies (e.g., requests to internal IPs or unusual ports).

Indicators of Compromise (IOCs)

  • Network Traffic:
    • Outbound HTTP requests from the WordPress server to private IP ranges (e.g., 10.x.x.x, 172.16-31.x.x, 192.168.x.x, 169.254.x.x).
    • Requests to cloud metadata endpoints (e.g., http://169.254.169.254/).
    • Requests to localhost (e.g., http://127.0.0.1/, http://localhost/).
  • Log Entries:
    • WordPress debug logs showing failed or successful wp_remote_get() calls to suspicious URLs.
    • Web server access logs (e.g., Apache/Nginx) showing POST requests to PowerPress settings pages with unusual URL parameters.
  • File System:
    • Unexpected files in the WordPress uploads directory that may have been fetched via SSRF.

Detection Engineering

YARA Rule

rule Detect_PowerPress_SSRF_Exploit {
    meta:
        description = "Detects attempts to exploit CVE-2025-32691 SSRF in PowerPress Podcasting"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-32691"
    strings:
        $url_pattern = /(http|https):\/\/(127\.0\.0\.1|localhost|10\.\d{1,3}\.\d{1,3}\.\d{1,3}|172\.(1[6-9]|2[0-9]|3[01])\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3}|169\.254\.\d{1,3}\.\d{1,3})/
        $powerpress_ref = "powerpress" nocase
        $feed_url_param = "feed_url" nocase
    condition:
        $powerpress_ref and $feed_url_param and $url_pattern
}

Sigma Rule

title: PowerPress SSRF Exploitation Attempt
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects HTTP requests to private IP ranges from WordPress PowerPress plugin
author: Valters IT
date: 2025/04/10
logsource:
    category: webserver
    product: apache
    service: access_combined
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains: 'powerpress'
        cs-uri-query|contains: 'feed_url'
        c-ip|startswith:
            - '10.'
            - '172.16.'
            - '172.17.'
            - '172.18.'
            - '172.19.'
            - '172.20.'
            - '172.21.'
            - '172.22.'
            - '172.23.'
            - '172.24.'
            - '172.25.'
            - '172.26.'
            - '172.27.'
            - '172.28.'
            - '172.29.'
            - '172.30.'
            - '172.31.'
            - '192.168.'
            - '169.254.'
            - '127.'
    condition: selection
falsepositives:
    - Legitimate use of internal services (if allowed)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-32691 PowerPress SSRF Attempt"; flow:to_server,established; content:"POST"; http_method; content:"powerpress"; http_uri; content:"feed_url"; http_client_body; pcre:"/(http|https):\/\/(127\.0\.0\.1|localhost|10\.\d{1,3}\.\d{1,3}\.\d{1,3}|172\.(1[6-9]|2[0-9]|3[01])\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3}|169\.254\.\d{1,3}\.\d{1,3})/Ri"; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the Plugin: If the PowerPress Podcasting plugin is not critical, deactivate and uninstall it until a patch is released.
  2. Restrict Administrative Access: Limit the number of users with administrative privileges. Use strong passwords and enable multi-factor authentication (MFA).
  3. Network Controls: Implement firewall rules to block outbound traffic from the WordPress server to private IP ranges and cloud metadata endpoints.
  4. Web Application Firewall (WAF): Deploy a WAF with rules to block SSRF attempts (e.g., blocking URLs containing private IPs).

Long-Term Fix:

  • Monitor the Blubrry plugin repository for an official patch. Once released, update to the patched version immediately.
  • Conduct a code review of the plugin to identify and fix the SSRF vulnerability if you have development resources.

Workaround:

  • If the plugin must remain active, consider modifying the plugin's code to add URL validation (as shown in the "Patched Code" section). However, this will be overwritten on plugin updates.

Valters IT
Securing Digital Frontiers

👁️ 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:"PowerPress"
http.html:"powerpress"
http.html:"blubrry"

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