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/nil0x42/duplicut
Utilità GenerichePassword CrackingUtilità e Framework
GitHubnil0x42/duplicut

duplicut

Rimuovi i duplicati da una wordlist MASSIVA, senza ordinarla (per il cracking delle password basato su dizionario)

Vedi Repository
98096710 mesi 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

Duplicut :scissors:

Rimuovi rapidamente i duplicati da enormi wordlist, senza cambiare l'ordine tweet


test github qualità del codice codacy codeql github copertura codecov

Menzionato in awesome-pentest Segui su X

Creato da nil0x42 e contributori


📖 Panoramica

Al giorno d'oggi, la creazione di wordlist per password di solito implica la concatenazione di più fonti di dati.

Idealmente, le password più probabili dovrebbero trovarsi all'inizio della wordlist, così le password più comuni vengono craccate istantaneamente.

Con gli strumenti di deduplicazione esistenti sei costretto a scegliere se preferisci preservare l'ordine OPPURE gestire wordlist enormi.

Sfortunatamente, la creazione di wordlist richiede entrambe le cose

Quindi ho scritto duplicut in C altamente ottimizzato per soddisfare questa esigenza molto specifica 🤓 💻



💡 Avvio rapido

root@kitploit:~
git clone https://github.com/nil0x42/duplicut  # download ...
cd duplicut/ && make                           # compile ...
./duplicut wordlist.txt -o clean-wordlist.txt  # dedupe !!!

🔧 Opzioni

root@kitploit:~
-o, --outfile <FILE>       Scrivi il risultato in <FILE>
-t, --threads <NUM>        Numero massimo di thread da usare (default max)
-m, --memlimit <VALUE>     Limita la memoria massima utilizzata (default max)
-l, --line-max-size <NUM>  Dimensione massima della riga (default 1024, max 4095)
-p, --printable            Filtra le righe con caratteri ASCII stampabili
-c, --lowercase            Converti la wordlist in minuscolo
-C, --uppercase            Converti la wordlist in maiuscolo
-D, --dupfile <FILE>       Scrivi i duplicati in <FILE> (rallenta duplicut)
-h, --help                 Mostra questo aiuto ed esci
-v, --version              Mostra le informazioni sulla versione ed esci
  • Caratteristiche:

    • Gestisci wordlist enormi, anche quelle la cui dimensione supera la RAM disponibile
    • Filtra le righe per lunghezza massima (opzione --line-max-size)
    • Filtra le righe con caratteri ASCII non stampabili (opzione --printable)
    • Salva i duplicati trovati in un altro file (opzione --dupfile)
    • Ignora maiuscole/minuscole con le opzioni --lowercase o --uppercase
    • Mostra una bella barra di progresso con ETA
  • Implementazione:

    • Scritto in puro codice C, progettato per essere veloce
    • Elementi dell'hashmap compressi su piattaforme a 64 bit
    • Supporto multithreading
  • Limitazioni:

    • --line-max-size non può superare 4095

📖 Dettagli Tecnici

🔸 1- Ottimizzazione della memoria:

Un uint64 è sufficiente per indicizzare le righe nell'hashmap, impacchettando le informazioni di size nei bit extra del puntatore:

🔸 2- Gestione di file enormi:

Se l'intero file non può entrare in memoria, viene suddiviso in chunk virtuali, in modo tale che ogni chunk utilizzi quanta più RAM possibile.

Ogni chunk viene quindi caricato nell'hashmap, deduplicato e testato rispetto ai chunk successivi.

In questo modo, il tempo di esecuzione diminuisce al massimo all'esimo numero triangolare:

💡 Risoluzione dei problemi

Se trovi un bug o qualcosa non funziona come previsto, compila duplicut in modalità debug e pubblica un issue con l'output allegato:

root@kitploit:~
# debug level can be from 1 to 4
make debug level=1
./duplicut [OPTIONS] 2>&1 | tee /tmp/duplicut-debug.log
Scarica lo strumento