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/esentire/cve-2015-7547-public
Analisi delle VulnerabilitàExploitFuzzingPenetration TestingAnalisi DNSBinary ExploitationArchived
GitHubesentire/cve-2015-7547-public

cve-2015-7547-public

Server di attacco PoC per la vulnerabilità di overflow del buffer CVE-2015-7547 nel risolutore DNS stub di glibc (versione pubblica)

Vedi Repository
105710 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

Server di attacco PoC per la vulnerabilità CVE-2015-7547 in glibc DNS stub resolver

Per testare su macchina locale con una versione vulnerabile di glibc:

root@kitploit:~
user@localhost:/$ echo 'nameserver 127.0.0.127' | sudo tee /etc/resolv.conf
user@localhost:/$ echo 'nameserver 127.0.0.127' | sudo tee -a /etc/resolv.conf
user@localhost:/$ sudo python3 attack-server.py 127.0.0.127
Starting UDP server on 127.0.0.127:53...
Starting TCP server on 127.0.0.127:53...

Poi, da un'altra sessione terminale, esegui gli attacchi come mostrato negli esempi qui sotto.

Attacco 1 (UDP+TCP)

Richiede la capacità di inviare risposte > 2048 byte su UDP e TCP.

Sequenza dell'attacco:

  1. Risposta UDP, > 2048 byte, header/question validi, flag TC impostato (innesca una cattiva gestione del buffer e un ritentativo TCP)

  2. Risposta TCP, header/question validi (forza la memorizzazione della risposta successiva in un buffer allocato sullo stack)

  3. Risposta TCP, > 2048 byte (overflow del buffer allocato sullo stack)

Esempio:

root@kitploit:~
user@localhost:/$ curl http://attack1
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)

Attacco 2 (solo UDP)

Richiede la capacità di inviare risposte > 2048 byte su UDP.

Sequenza dell'attacco:

  1. Risposta UDP, > 2048 byte, header non valido (innesca una cattiva gestione del buffer, non conteggiato come risposta valida)

  2. Ignora la richiesta successiva (innesca un ritentativo UDP a causa del timeout di polling)

  3. Risposta UDP, header/question validi (forza la memorizzazione della risposta successiva in un buffer allocato sullo stack)

  4. Risposta UDP, > 2048 byte (overflow del buffer allocato sullo stack)

Esempio:

root@kitploit:~
user@localhost:/$ curl http://attack2
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)

Attacco 3 (UDP+TCP)

Richiede la capacità di inviare risposte > 1024 byte su UDP e > 2048 byte su TCP.

Sequenza dell'attacco:

  1. Risposta UDP, 1024 byte, header/question validi (riempie metà del buffer allocato sullo stack)

  2. Risposta UDP, > 1024 byte, header/question validi, flag TC impostato (innesca una cattiva gestione del buffer e un ritentativo TCP)

  3. Risposta TCP, header/question validi (forza la memorizzazione della risposta successiva in un buffer allocato sullo stack)

  4. Risposta TCP, > 2048 byte (overflow del buffer allocato sullo stack)

Esempio:

root@kitploit:~
user@localhost:/$ curl http://attack3
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)

Attacco 4 (solo UDP)

Richiede la capacità di inviare risposte > 2048 byte su UDP.

Sequenza dell'attacco:

  1. Risposta UDP, 2048 byte, header/question validi (riempie il buffer allocato sullo stack)

  2. Risposta UDP (innesca una cattiva gestione del buffer e un ritentativo UDP a causa di una ricezione socket di 0 byte)

  3. Risposta UDP, header/question validi (forza la memorizzazione della risposta successiva in un buffer allocato sullo stack)

  4. Risposta UDP, > 2048 byte (overflow del buffer allocato sullo stack)

Esempio:

root@kitploit:~
user@localhost:/$ curl http://attack4
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)

Attacco 5 (solo TCP)

Richiede la capacità di inviare risposte > 2048 byte su TCP e almeno due voci di nameserver in /etc/resolv.conf.

Sequenza dell'attacco:

  1. Risposta UDP, header/question validi, flag TC impostato (opzionale, attiva il ritentativo TCP se la query iniziale è su UDP)

  2. Risposta TCP, > 2048 byte (innesca una cattiva gestione del buffer)

  3. Risposta TCP, vuota (innesca un ritentativo TCP a causa di una ricezione socket di 0 byte)

  4. Risposta TCP, header/question validi (forza la memorizzazione della risposta successiva in un buffer allocato sullo stack)

  5. Risposta TCP, > 2048 byte (overflow del buffer allocato sullo stack)

Esempio:

root@kitploit:~
user@localhost:/$ curl http://attack5
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)

Test dei Payload

Per attivare una risposta valida di tipo A/AAAA di una certa dimensione dal server, invia una richiesta per uno dei seguenti:

  • payload1 (> 64 byte)
  • payload2 (> 128 byte)
  • payload3 (> 256 byte)
  • payload4 (> 512 byte)
  • payload5 (> 1024 byte)
  • payload6 (> 2048 byte)
  • payload7 (> 4096 byte)
  • payload8 (> 8192 byte)

Le richieste possono essere inviate su UDP o TCP, e le risposte conterranno il numero appropriato di risposte valide A o AAAA per riempire la risposta fino alla dimensione richiesta. Quando il server PoC è configurato come server dei nomi autorevole per un dominio di test, ciò consente di esplorare il comportamento delle gerarchie di cache DNS quando si trovano di fronte a risposte sovradimensionate.

Esempio:

root@kitploit:~
user@localhost:/$ curl http://payload1.somedomain.com
Scarica lo strumento