Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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
dns-rebind-toolkit — Un toolkit JavaScript front-end per creare attacchi di DNS rebinding. | Kitploit
Strumenti/GitHubGitHub/brannondorsey/dns-rebind-toolkit
RicognizioneSicurezza IoTExploitSfruttamento di Applicazioni WebRaccolta InformazioniPenetration TestingApprendimento e FormazioneRed TeamingAnalisi DNS
GitHubbrannondorsey/dns-rebind-toolkit

dns-rebind-toolkit

Un toolkit JavaScript front-end per creare attacchi di DNS rebinding.

50284154 anni faRevisionato da Kitploit

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 →
Vedi RepositorySito web
Condividi

DNS Rebind Toolkit

Demo | Avviso di Sicurezza | Payload Inclusi | FAQ

DICHIARAZIONE DI ESCLUSIONE DI RESPONSABILITÀ: Questo software è solo per scopi educativi. Questo software non deve essere utilizzato per attività illegali. L'autore non è responsabile per il suo utilizzo. Non fare lo stronzo.

DNS Rebind Toolkit è un framework JavaScript lato frontend per sviluppare exploit di DNS Rebinding contro host e servizi vulnerabili su una rete locale (LAN). Può essere utilizzato per prendere di mira dispositivi come Google Home, Roku, altoparlanti WiFi Sonos, router WiFi, termostati "intelligenti" e altri dispositivi IoT. Con questo toolkit, un attaccante remoto può bypassare il firewall di un router e interagire direttamente con i dispositivi sulla rete domestica della vittima, esfiltrando informazioni private e, in alcuni casi, controllando persino i dispositivi vulnerabili stessi.

L'attacco richiede che una vittima sulla rete di destinazione si limiti a seguire un link, o veda un annuncio HTML contenente un iframe dannoso. Da lì, il browser web della vittima viene utilizzato come proxy per accedere direttamente ad altri host connessi alla sua rete domestica. Queste macchine e servizi di destinazione sarebbero altrimenti non raggiungibili dall'attaccante da Internet. L'attaccante remoto potrebbe non sapere quali siano questi servizi o quali indirizzi IP occupino sulla rete della vittima, ma DNS Rebind Toolkit gestisce la cosa provando a forza bruta centinaia di indirizzi IP probabili.

Sotto il cofano, questo strumento utilizza un server DNS whonow pubblico in esecuzione su rebind.network:53 per eseguire l'attacco di rebind DNS e ingannare il browser web della vittima facendogli violare la Same-origin policy. Da lì, utilizza WebRTC per divulgare l'indirizzo IP privato della vittima, ad esempio 192.168.1.36. Usa i primi tre ottetti di questo indirizzo IP locale per indovinare la sottorete della rete e quindi inietta 256 iframe, da 192.168.1.0 a 255, consegnando un payload a ciascun host che potrebbe trovarsi sulla sottorete di rete.

Questo toolkit può essere utilizzato per sviluppare e distribuire i propri attacchi di DNS rebinding. Diversi payload di attacco reali sono inclusi con questo toolkit nella directory payloads/. Questi payload includono attacchi di esfiltrazione di informazioni (e scherzi rickroll) contro alcuni popolari dispositivi IoT, inclusi i prodotti Google Home e Roku.

Questo toolkit è il frutto di una ricerca di sicurezza indipendente sugli attacchi di DNS Rebinding. Puoi leggere la ricerca originale qui.

Per Iniziare

# clone the repo
git clone https://github.com/brannondorsey/dns-rebind-toolkit.git
cd dns-rebind-toolkit

# install dependencies
npm install

# run the server using root to provide access to privileged port 80 
# this script serves files from the www/, /examples, /share, and /payloads directories
sudo node server

Per impostazione predefinita, server.js serve payload mirati a Google Home, Roku, altoparlanti Sonos, lampadine Phillips Hue e dispositivi Radio Thermostat che eseguono i loro servizi rispettivamente sulle porte 8008, 8060, 1400, 80 e 80. Se possiedi uno di questi dispositivi sulla tua rete domestica, naviga su http://rebind.network per una bella sorpresa ;). Apri la console dello sviluppatore e guarda come questi servizi vengono sfruttati in modo innocuo, causando il furto di dati da essi e la loro esfiltrazione verso server.js.

API e Utilizzo

Questo toolkit fornisce due oggetti JavaScript che possono essere utilizzati insieme per creare attacchi di DNS rebinding:

  • DNSRebindAttack: Questo oggetto viene utilizzato per lanciare un attacco contro un servizio vulnerabile in esecuzione su una porta nota. Genera un payload per ciascun indirizzo IP che si sceglie di prendere di mira. Gli oggetti DNSRebindAttack sono usati per creare, gestire e comunicare con molti oggetti DNSRebindNode. Ogni payload lanciato da DNSRebindAttack deve contenere un oggetto DNSRebindNode.
  • DNSRebindNode: Questa classe statica dovrebbe essere inclusa in ogni file HTML di payload. Viene utilizzata per prendere di mira un servizio in esecuzione su un host. Può comunicare con l'oggetto DNSRebindAttack che lo ha generato e dispone di funzioni helper per eseguire l'attacco di DNS rebinding (usando DNSRebindNode.rebind(...)) nonché per esfiltrare i dati scoperti durante l'attacco verso server.js (DNSRebindNode.exfiltrate(...)).

Questi due script vengono usati insieme per eseguire un attacco contro host sconosciuti su una LAN protetta da firewall. Un attacco di base si presenta così:

  1. L'attaccante invia alla vittima un link a una pagina HTML dannosa che lancia l'attacco: ad esempio http://example.com/launcher.html. launcher.html contiene un'istanza di DNSRebindAttack.
  2. La vittima segue il link dell'attaccante o visita una pagina in cui http://example.com/launcher.html è incorporato come iframe. Questo fa sì che DNSRebindAttack su launcher.html inizi l'attacco.
  3. DNSRebindAttack utilizza una perdita WebRTC per scoprire l'indirizzo IP locale della macchina della vittima (ad esempio 192.168.10.84). L'attaccante usa queste informazioni per scegliere un intervallo di indirizzi IP da prendere di mira sulla LAN della vittima (ad esempio 192.168.10.0-255).
  4. launcher.html lancia l'attacco di DNS rebinding (usando DNSRebindAttack.attack(...)) contro un intervallo di indirizzi IP sulla sottorete della vittima, prendendo di mira un singolo servizio (ad esempio l'API REST non documentata di Google Home disponibile sulla porta 8008).
  5. A un intervallo definito dall'utente (200 millisecondi per impostazione predefinita), DNSRebindAttack incorpora un iframe contenente payload.html nella pagina launcher.html. Ogni iframe contiene un oggetto DNSRebindNode che esegue un attacco contro la porta 8008 di un singolo host definito nell'intervallo di indirizzi IP attaccati. Questo processo di iniezione continua finché non è stato iniettato un iframe per ciascun indirizzo IP preso di mira dall'attacco.
  6. Ogni file payload.html iniettato utilizza DNSRebindNode per tentare un attacco di rebind comunicando con un server DNS whonow. Se riesce, la same-origin policy viene violata e payload.html può comunicare direttamente con il prodotto Google Home. Di solito payload.html sarà scritto in modo tale da effettuare alcune chiamate API al dispositivo di destinazione ed esfiltrare i risultati a server.js in esecuzione su example.com prima di terminare l'attacco e distruggersi.

Nota: se un utente ha un dispositivo Google Home sulla propria rete con un indirizzo IP sconosciuto e viene lanciato un attacco contro l'intera sottorete 192.168.1.0/24, allora l'attacco di rebind di un DNSRebindNode avrà successo e 254 falliranno.

Esempi

Un attacco consiste in tre script e file coordinati:

Scarica lo strumento