Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
psudohash — Genera millones de mutaciones de contraseñas basadas en palabras clave en segundos. | Kitploit
Herramientas/GitHubGitHub/t3l3machus/psudohash
Descifrado de ContraseñasAtaques de ContraseñasPruebas de Penetración
GitHubt3l3machus/psudohash

psudohash

Genera millones de mutaciones de contraseñas basadas en palabras clave en segundos.

Ver Repositorio
1.5k17526hace 1 añoRevisado 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

psudohash

Python 3.x License

Nuevas características interesantes de v1.1.0

Agradecimientos especiales a DavidAngelos:
▶️ Se añadió una barra de progreso en cada paso para rastrear la ejecución.
▶️ Se añadieron opciones:

  • Uniones en orden (-i / --inorder): combinar palabras clave solo en el orden original (ej. foo,bar,baz → foo, bar, baz, foobar, foobaz, barbaz, foobarbaz).
  • Combinaciones en todos los órdenes (-c / --combinations): generar cada ordenación de cada subconjunto (ej. foo,bar,baz → foo, bar, baz, foobar, foobaz, barfoo, …, bazbarfoo).
  • Separador personalizado (--sep <cadena>): al unir palabras, insertar esta cadena entre tokens (por defecto sin separador).
  • Tamaño máximo de combinación (--max-combine <N>): limitar cuántas palabras clave sin procesar se unen (por defecto: 2).
  • Filtrado de longitud mínima/máxima de palabras finales (--minlen/--maxlen <N>): filtrar la lista final solo con palabras de la longitud deseada.

Propósito

Psudohash es un generador de listas de contraseñas para orquestar ataques de fuerza bruta y descifrar hashes. Imita ciertos patrones de creación de contraseñas comúnmente utilizados por humanos, como sustituir letras de una palabra con símbolos o números (leet), usar variaciones de mayúsculas/minúsculas, agregar un relleno común antes o después de la frase de paso principal y más. Está basado en palabras clave y es altamente personalizable. 🎥 -> Video Presentación

Pentesting en Entornos Corporativos

Los administradores de sistemas y otros empleados a menudo usan una versión mutada del nombre de la empresa para establecer contraseñas (ej. Am@z0n_2022). Esto es común en dispositivos de red (puntos de acceso Wi-Fi, switches, routers, etc.), aplicaciones o incluso cuentas de dominio. Con las opciones más básicas, psudohash puede generar una lista de palabras con todas las mutaciones posibles de una o varias palabras clave, basándose en patrones comunes de sustitución de caracteres (personalizables), variaciones de mayúsculas/minúsculas, cadenas comúnmente usadas como relleno y más. Observe el siguiente ejemplo:

image

Personalización

Sustitución de Caracteres Leet

El script implementa el siguiente esquema de sustitución de caracteres. Puede agregar/modificar las asignaciones de sustitución editando la lista transformations en psudohash.py y siguiendo la estructura de datos que se muestra a continuación (por defecto):

transformations = [
	{'a' : ['@', '4']},
	{'b' : '8'},
	{'e' : '3'},
	{'g' : ['9', '6']},
	{'i' : ['1', '!']},
	{'o' : '0'},
	{'s' : ['$', '5']},
	{'t' : '7'}
]

Valores de Relleno Comunes

Al establecer contraseñas, creo que es bastante estándar agregar una secuencia de caracteres antes y/o después de la frase de paso principal para hacerla "más segura". Por ejemplo, alguien puede establecer una contraseña "dragon" y agregar un valor como "!!!" o "!@#" al final, resultando en "dragon!!!", "dragon!@#", etc. Psudohash lee estos valores de common_padding_values.txt y los usa para mutar las palabras clave proporcionadas, añadiéndolos antes (-cpb) o después (-cpa) de cada variación de palabra clave generada. Puede modificarlo como prefiera.

Valores de Año

Al agregar un valor de año a una palabra clave mutada, psudohash lo hará utilizando varios separadores. Por defecto, usará los siguientes separadores, que puede modificar editando la lista year_separators:

year_seperators = ['', '_', '-', '@']

Por ejemplo, si la palabra clave dada es "amazon" y se usó la opción -y 2023, la salida incluirá "amazon2023", "amazon_2023", "amazon-2023", "amazon@2023", "amazon23", "amazon_23", "amazon-23", "amazon@23".

Instalación

Instale Python 3.x y tqdm primero:

pip3 install tqdm

Luego clone el repositorio y haga el script ejecutable:

git clone https://github.com/t3l3machus/psudohash.git
cd ./psudohash
chmod +x psudohash.py

Uso

./psudohash.py [-h] -w WORDS [-i] [-c] [--sep SEP] [--max-combine N] [-an LEVEL] [-nl LIMIT] [-y YEARS] [-ap VALUES] [-cpb] [-cpa] [-cpo] [-o FILENAME] [-q]

El diálogo de ayuda [ -h, --help ] incluye detalles de uso y ejemplos.

Opciones

  • -w, --words <kw1,kw2,…>
    Palabras clave separadas por comas (obligatorio).

  • -i, --inorder
    Unir hasta --max-combine palabras clave en el orden dado (ej. foo,bar,baz → foo, bar, baz, foobar, foobaz, barbaz, foobarbaz).

  • -c, --combinations
    Generar todas las permutaciones de cada subconjunto (hasta --max-combine) (ej. foo,bar,baz → foo, bar, baz, foobar, foobaz, barfoo, …).

  • --max-combine <N> (por defecto: 2)
    Número máximo de palabras clave sin procesar para unir en una sola cadena base.

  • --sep <cadena>
    Al unir palabras (-i o -c), colocar esta cadena entre tokens. Por defecto es una cadena vacía.

  • --minlen <N>
    Descartar cualquier contraseña final más corta de N caracteres.

  • --maxlen <N>
    Descartar cualquier contraseña final más larga de N caracteres.

  • -an, --append-numbering <NIVEL>
    Agregar sufijos numerados (con ceros a la izquierda hasta <NIVEL> dígitos) a cada mutación de palabra.

  • -nl, --numbering-limit <LÍMITE>
    Número máximo hasta el cual contar al agregar números (por defecto: 50).

  • -y, --years <años>
    Agregar uno o más años a cada mutación (ej. 1990-2000, o 2022,2023).

  • -ap, --append-padding <valores>
    Agregar valores de relleno personalizados (separados por comas). Debe usarse con -cpb o -cpa.

  • -cpb, --common-paddings-before
    Anteponer valores de common_padding_values.txt antes de cada mutación.

  • -cpa, --common-paddings-after
    Añadir valores de common_padding_values.txt después de cada mutación.

  • -cpo, --custom-paddings-only
    Usar solo rellenos proporcionados por el usuario (sin valores predeterminados). Debe usarse con -ap.

  • -o, --output <archivo>
    Escribir los resultados en <archivo> (por defecto: output.txt).

  • -q, --quiet
    Suprimir el banner de arte ASCII al inicio.

Ejemplos de Uso

  1. Sin palabras múltiples (solo singletons)

    ./psudohash.py -w foo,bar,baz -cpa
    # → foo, bar, baz
    
  2. Uniones en orden (-i, hasta 2 palabras por defecto)

    ./psudohash.py -w foo,bar,baz -i
    # → foo, bar, baz, foobar, foobaz, barbaz
    
  3. Combinaciones en todos los órdenes (-c, hasta 2 palabras por defecto)

    ./psudohash.py -w foo,bar,baz -c
    # → foo, bar, baz, foobar, foobaz, barfoo, barbaz, bazfoo, bazbar
    
  4. Cambiar separador entre palabras unidas

    ./psudohash.py -w foo,bar,baz -i --sep "_"
    # → foo, bar, baz, foo_bar, foo_baz, bar_baz
    
  5. Filtrado de longitud (--minlen/--maxlen)

     ./psudohash.py -w apple,banana -i --minlen 10
     # Advertencia: no se puede determinar el tamaño exacto debido a los filtros de longitud.
     # Ejemplos de salidas finales podrían incluir “applebanana” (11 caracteres), “bananaapple” (11 caracteres).
    
  6. Combinar hasta 3 palabras (en lugar de las 2 por defecto)
    (Nota: el ejemplo continúa pero el texto original se corta; asumimos que es intencional y no traducimos más allá de lo proporcionado)

Descargar herramienta