Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
duplicut — Eliminar duplicados de una lista de palabras MASIVA, sin ordenarla (para cracking de contraseñas basado en diccionarios) | Kitploit
Herramientas/GitHubGitHub/nil0x42/duplicut
Utilidades de Propósito GeneralDescifrado de ContraseñasUtilidades y Frameworks
GitHubnil0x42/duplicut

duplicut

Eliminar duplicados de una lista de palabras MASIVA, sin ordenarla (para cracking de contraseñas basado en diccionarios)

Ver Repositorio
980967hace 10 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Duplicut :scissors:

Elimina rápidamente duplicados de listas de palabras masivas, sin cambiar el orden tweet


github tests codacy code quality

github codeql
codecov coverage

Mentioned in awesome-pentest

Creado por nil0x42 y colaboradores


📖 Resumen

Hoy en día, la creación de listas de palabras para contraseñas generalmente implica concatenar múltiples fuentes de datos.

Idealmente, las contraseñas más probables deberían estar al inicio de la lista, para que las más comunes se descifren al instante.

Con las herramientas de deduplicación existentes, te ves obligado a elegir si prefieres preservar el orden O manejar listas masivas.

Desafortunadamente, la creación de listas requiere ambas

Así que escribí duplicut en C altamente optimizado para abordar esta necesidad tan específica 🤓 💻



💡 Inicio rápido

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

🔧 Opciones

root@kitploit:~
-o, --outfile <FILE>       Write result to <FILE>
-t, --threads <NUM>        Max threads to use (default max)
-m, --memlimit <VALUE>     Limit max used memory (default max)
-l, --line-max-size <NUM>  Max line size (default 1024, max 4095)
-p, --printable            Filter ascii printable lines
-c, --lowercase            Convert wordlist to lowercase
-C, --uppercase            Convert wordlist to uppercase
-D, --dupfile <FILE>       Write dupes to <FILE> (slows down duplicut)
-h, --help                 Display this help and exit
-v, --version              Output version information and exit
  • Características:

    • Maneja listas de palabras masivas, incluso aquellas cuyo tamaño excede la RAM disponible
    • Filtra líneas por longitud máxima (--line-max-size opción)
    • Elimina líneas con caracteres ASCII no imprimibles (--printable opción)
    • Guarda los duplicados encontrados en otro archivo (--dupfile opción)
    • Ignora mayúsculas/minúsculas con las opciones --lowercase o --uppercase
    • Muestra una barra de progreso con ETA
  • Implementación:

    • Escrito en código C puro, diseñado para ser rápido
    • Elementos de hashmap comprimidos en plataformas de 64 bits
    • Soporte de subprocesos múltiples
  • Limitaciones:

    • --line-max-size no puede exceder 4095

📖 Detalles técnicos

🔸 1- Memoria optimizada:

Un uint64 es suficiente para indexar líneas en el hashmap, empaquetando la información de tamaño dentro de los bits extra del puntero:

🔸 2- Manejo de archivos masivos:

Si el archivo completo no cabe en memoria, se divide en fragmentos virtuales, de manera que cada fragmento utilice la mayor cantidad de RAM posible.

Cada fragmento se carga en el hashmap, se deduplica y se prueba contra los fragmentos posteriores.

De esta manera, el tiempo de ejecución se reduce al número triangular ésimo como máximo:

💡 Solución de problemas

Si encuentras un error o algo no funciona como se espera, compila duplicut en modo depuración y publica un issue con la salida adjunta:

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