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
DorXNG — Next Generation DorX. Costruito da Dorks, per Dorks. 🤓 | Kitploit
Strumenti/GitHubGitHub/researchanddestroy/dorxng
OSINT (Open Source Intelligence)RicognizioneEnumerazione DNS e SottodominiRaccolta InformazioniSicurezza WebPrivacy
GitHubresearchanddestroy/dorxng

DorXNG

Next Generation DorX. Costruito da Dorks, per Dorks. 🤓

Vedi Repository
122193 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 →
Condividi

DorXNG 🔎🌎

DorXNG è una soluzione moderna per raccogliere dati OSINT utilizzando operatori di ricerca avanzati attraverso molteplici provider di ricerca upstream. Nel backend sfrutta un'immagine containerizzata appositamente costruita di SearXNG, un meta-motore di ricerca self-hosted, hackable e incentrato sulla privacy.

La nostra implementazione di SearXNG instrada tutte le query di ricerca attraverso la rete Tor, rigenerando i circuiti ogni dieci secondi con la direttiva di configurazione MaxCircuitDirtiness di Tor. Abbiamo anche disabilitato tutte le funzionalità di timeout lato client di SearXNG. Queste impostazioni consentono di eludere le restrizioni dei motori di ricerca comunemente incontrate quando si emettono molte query di ricerca ripetute.

L'applicazione client DorXNG è scritta in Python3 e interagisce con l'API di SearXNG per emettere query di ricerca in modo concorrente. Può persino inviare richieste attraverso più istanze SearXNG. I risultati di ricerca ottenuti vengono memorizzati in un database SQLite3.

DorXNG

Abbiamo abilitato ogni motore di ricerca upstream supportato che consente query con operatori di ricerca avanzati:

  • Google
  • DuckDuckGo
  • Qwant
  • Bing
  • Brave
  • Startpage
  • Yahoo

Per maggiori informazioni sui motori di ricerca supportati da SearXNG, consultare: Configured Engines

Per favore NON utilizzare l'applicazione client DorXNG contro istanze pubbliche di SearXNG.

Offrici una birra! 🍺

Riconoscimenti 🙌

Un ringraziamento agli sviluppatori di Tor e SearXNG per aver reso tutto ciò possibile. Andate a donare a entrambi i progetti!

Un ringraziamento allo sviluppatore di pagodo per l'ispirazione e quel fantastico script ghdb_scraper.py!

Ultimo ma non meno importante, un ringraziamento a j0hnny. L'OG Dork. 🧠🏴‍☠

Configurazione 🛠️

SOLO LINUX ** Spiacenti, normali ** 🤓

Installa DorXNG

root@kitploit:~
git clone https://github.com/researchanddestroy/dorxng
cd dorxng
pip install -r requirements.txt
./DorXNG.py -h

Scarica ed esegui il nostro container Docker SearXNG personalizzato (almeno uno). È possibile utilizzare più istanze SearXNG. Usa l'opzione --serverlist con DorXNG. Vedi: server.lst

Quando si avviano più container, attendere almeno qualche secondo tra l'avvio di ciascuno.

root@kitploit:~
docker run researchanddestroy/searxng:latest

Se desideri costruire il container da solo:

root@kitploit:~
git clone https://github.com/researchanddestroy/searxng # L'URL deve essere tutto minuscolo per completare la build
cd searxng
DOCKER_BUILDKIT=1 make docker.build
docker images
docker run <image-id>

Per impostazione predefinita, DorXNG ha una variabile server hardcoded in parse_args.py impostata sull'indirizzo IP che Docker assegnerà al primo container che esegui sulla tua macchina 172.17.0.2. Può essere modificata o sovrascritta con --server o --serverlist.

Inizia a emettere query di ricerca

root@kitploit:~
./DorXNG.py -q 'query di ricerca'

Interroga il database DorXNG

root@kitploit:~
./DorXNG.py -D 'stringa regex di ricerca'

Istruzioni 📖

root@kitploit:~
-h, --help            mostra questo messaggio di aiuto ed esci
-s SERVER, --server SERVER
                      Istanza del server DorXNG - Esempio: 'https://172.17.0.2/search'
-S SERVERLIST, --serverlist SERVERLIST
                      Emetti query di ricerca su un elenco di server - Formato: delimitato da newline
-q QUERY, --query QUERY
                      Emetti una query di ricerca - Esempi: 'query di ricerca' | '!tch query di ricerca' | 'site:example.com intext:example'
-Q QUERYLIST, --querylist QUERYLIST
                      Iterazione attraverso un elenco di query di ricerca - Formato: delimitato da newline
-n NUMBER, --number NUMBER
                      Definisci il numero di iterazioni dei risultati della pagina
-c CONCURRENT, --concurrent CONCURRENT
                      Definisci il numero di richieste di pagina concorrenti
-l LIMITDATABASE, --limitdatabase LIMITDATABASE
                      Imposta il limite massimo di dimensione del database - Avvia un nuovo database dopo il superamento - Esempio: --limitdatabase 10 (10.000 voci nel database) - La dimensione massima consigliata del database è 50k
                      quando si esegue una ricorsione profonda
-L LOOP, --loop LOOP  Definisci il numero di iterazioni del ciclo della funzione principale - Ciclo infinito con 0
-d DATABASE, --database DATABASE
                      Specifica il file del database SQL - Predefinito: 'dorxng.db'
-D DATABASEQUERY, --databasequery DATABASEQUERY
                      Esegui una query sul database - Formato: regex
-m MERGEDATABASE, --mergedatabase MERGEDATABASE
                      Unisci file di database SQL - Esempio: --mergedatabase database.db
-t TIMEOUT, --timeout TIMEOUT
                      Specifica l'intervallo di timeout tra le richieste - Predefinito: 4 secondi - Disabilita con 0
-r NONEWRESULTS, --nonewresults NONEWRESULTS
                      Specifica il numero di iterazioni senza nuovi risultati - Predefinito: 4 (3 tentativi) - Disabilita con 0
-v, --verbose         Abilita output verboso
-vv, --veryverbose    Abilita output molto verboso - Mostra output JSON grezzo

Suggerimenti 📝

A volte capiterai su un nodo di uscita Tor già bloccato dai provider di ricerca upstream, ricevendo così un numero minimo di risultati di ricerca. Niente paura... Continua a lanciare query. 😉

Mantieni il tuo file di database SQL di DorXNG e riesegui il comando, oppure usa l'opzione --loop per iterare ripetutamente la funzione principale. 🔁

Molto spesso, più passaggi fai su una query di ricerca, più risultati troverai. 🍻

Tieni anche presente che abbiamo sacrificato la velocità per un maggiore volume di dati in uscita. Dopo tutto, questo è un progetto OSINT. 🔎🌎

Ogni query di ricerca che fai viene inviata a 7 provider di ricerca upstream... Soprattutto con query --concurrent, questo genera molte richieste upstream... Quindi abbi pazienza.

Tieni presente che DorXNG continuerà ad aggiungere nuovi risultati di ricerca al tuo file di database. Usa l'opzione --database per specificare un nome file del database; il nome predefinito è dorxng.db. Probabilmente per la maggior parte non ha importanza, ma se vuoi tenere separate le tue indagini OSINT, è lì per te.

Quattro richieste di ricerca concorrenti sembrano essere il punto ottimale. Puoi emetterne di più, ma più query emetti contemporaneamente, più tempo ci vorrà per ricevere i risultati. Aumenta anche la probabilità di ricevere risposte HTTP/429 Too Many Requests dai provider di ricerca upstream su quel circuito Tor specifico.

Se avvii più container Docker SearXNG troppo rapidamente, le connessioni Tor potrebbero non riuscire a stabilirsi. Durante l'inizializzazione di un container, una risposta valida dalla funzione di verifica della connettività Tor appare così:

root@kitploit:~
Checking Tor Connectivity..
{"IsTor":true,"IP":"<tor-exit-node>"}

Se vedi qualcosa di diverso, o se inizi a vedere codici di risposta HTTP/500 dallo script di monitoraggio SearXNG (STDOUT nel container), kill il container Docker e avviane uno nuovo.

I codici di risposta HTTP/504 Gateway Time-out all'interno di DorXNG sono a volte previsti. Ciò significa che l'istanza SearXNG non ha ricevuto una risposta valida entro un minuto. Quel circuito Tor specifico è probabilmente troppo lento. Continua e basta!

Non c'è davvero motivo per eseguire un sacco di questi container... Ancora... 😉 Quanti ne esegui dipende davvero da cosa stai facendo. Ogni container utilizza circa 1.25GB di RAM.

Eseguire un singolo container funziona perfettamente, tranne che probabilmente perderai alcuni risultati di ricerca. Quindi usa --loop e non disabilitare --timeout.

Eseguire più container è comodo perché ognuno ha il proprio circuito Tor che si rigenera ogni 10 secondi.

Quando si esegue la modalità --serverlist, disabilita la funzionalità --timeout in modo che non ci sia ritardo tra le richieste (l'intervallo di ritardo predefinito è di 4 secondi).

Tieni presente che più container esegui, più memoria sarà necessaria. Questo vale anche per la ricorsione profonda... Abbiamo disabilitato il limite di ricorsione massimo di Python... 🔁😉

Più ricorsioni attraversa il tuo comando senza tornare a main, più memoria consumerà il processo. Potresti tornare e scoprire che il processo è crashato con un messaggio di errore Killed. Se ciò accade, la tua macchina ha esaurito la memoria e ha ucciso il processo. Ma niente paura... Il tuo file di database è ancora integro. 👍👍

Se il tuo file di database diventa eccezionalmente grande, inevitabilmente rallenta il programma e consuma più memoria a ogni iterazione...

Quegli stack frame di Python sono spessi... 🍑😅

Abbiamo notato un notevole calo delle prestazioni con file di database che superano circa 50 mila voci.

L'opzione --limitdatabase è stata implementata per mitigare alcuni di questi problemi di consumo di memoria. Usala in combinazione con --loop per interrompere l'iterazione ricorsiva profonda all'interno di iterator.py e riavviare da main proprio dove avevi interrotto.

Una volta che hai una serie di file di database, puoi unirli tutti (uno alla volta) con --mergedatabase. Puoi persino unirli tutti in un nuovo file di database se specifichi un nome file non utilizzato con --database.

NON unire dati in un database attualmente in uso da un processo DorXNG in esecuzione. Ciò potrebbe causare errori e potenzialmente corrompere il database.

Il file query.lst incluso contiene ogni dork attualmente presente nel Google Hacking Database (GHDB). Vedi: ghdb_scraper.py

Lo abbiamo già eseguito per te... 😉 Il nostro file ghdb.db contiene oltre un milione di voci e continua a crescere! 🤩 Puoi scaricarlo qui ghdb.db se desideri una copia. 😉

Esempio di interrogazione del database ghdb.db:

root@kitploit:~
./DorXNG.py -d ghdb.db -D '^http.*\.sql$'

Una riscrittura di DorXNG in Golang è già in lavorazione. 😉 (GorXNG? | DorXNGNG?) 😆

Abbiamo bisogno di più dork... 😅 Dai un'occhiata a DorkGPT 👀

Esempi 💡

Singola query di ricerca

root@kitploit:~
./DorXNG.py -q 'query di ricerca'

Query di ricerca concorrenti

root@kitploit:~
./DorXNG.py -q 'query di ricerca' -c4

Modalità di iterazione delle pagine

root@kitploit:~
./DorXNG.py -q 'query di ricerca' -n4

Query di ricerca concorrenti iterative

root@kitploit:~
./DorXNG.py -q 'query di ricerca' -c4 -n64

Modalità di iterazione su elenco di server

root@kitploit:~
./DorXNG.py -S server.lst -q 'query di ricerca' -c4 -n64 -t0

Modalità di iterazione su elenco di query

root@kitploit:~
./DorXNG.py -Q query.lst -c4 -n64

Iterazione su elenco di query e server

root@kitploit:~
./DorXNG.py -S server.lst -Q query.lst -c4 -n64 -t0

Modalità di iterazione del ciclo della funzione principale

root@kitploit:~
./DorXNG.py -S server.lst -Q query.lst -c4 -n64 -t0 -L4

Modalità di iterazione infinita del ciclo della funzione principale con limite di dimensione del file di database impostato a 10.000 voci

root@kitploit:~
./DorXNG.py -S server.lst -Q query.lst -c4 -n64 -t0 -L0 -l10

Unione di un database (uno alla volta) in un nuovo file di database

root@kitploit:~
./DorXNG.py -d new-database.db -m dorxng.db

Unisci tutti i file di database nella directory di lavoro corrente in un nuovo file di database

root@kitploit:~
for i in `ls *.db`; do ./DorXNG.py -d new-database.db -m $i; done

Interroga un database

root@kitploit:~
./DorXNG.py -d new-database.db -D 'stringa regex di ricerca'
Scarica lo strumento