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
featherduster — Una herramienta automatizada y modular de criptoanálisis; es decir, un Arma de Destrucción Matemática. | Kitploit
Herramientas/GitHubGitHub/nccgroup/featherduster
Herramientas de Cifrado/DescifradoAnálisis de VulnerabilidadesExplotaciónCriptografíaPruebas de Penetración
GitHubnccgroup/featherduster

featherduster

Una herramienta automatizada y modular de criptoanálisis; es decir, un Arma de Destrucción Matemática.

Ver Repositorio
1.1k130hace 4 añosRevisado 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

FeatherDuster (y Cryptanalib)

FeatherDuster logo Build Status

FeatherDuster es una herramienta escrita principalmente por Daniel «unicornfurnace» Crowley, junto con contribuciones de la comunidad, para romper criptografía; intenta facilitar al máximo el proceso de identificar y explotar sistemas criptográficos débiles. Cryptanalib es la maquinaria interna de FeatherDuster, y puede usarse de forma independiente de FeatherDuster.

¿Por qué «FeatherDuster»? Hay un chiste interno entre algunos aficionados a la criptografía en el que usar criptografía de forma deficiente, o para resolver un problema que la criptografía no está pensada para resolver, se llama «espolvorear polvo mágico de hadas criptográfico sobre ello». FeatherDuster sirve para limpiar el polvo mágico de hadas criptográfico.

Esta es una versión beta de FeatherDuster. Puede haber cosas rotas.

Si encuentras un error, por favor abre un issue. Las pull requests son bienvenidas y alentadas.

Uso de FeatherDuster

python featherduster/featherduster.py [archivo de texto cifrado 1] ... [archivo de texto cifrado n]

Si has instalado FeatherDuster en tu entorno virtual, puedes ejecutarlo simplemente como:

root@kitploit:~
(featherduster) $ featherduster [archivo de texto cifrado 1] ... [archivo de texto cifrado n]

Al importar muestras mediante argumentos posicionales, cada archivo se consumirá y se tratará como su propio texto cifrado, independientemente del formato de los archivos. FeatherDuster tiene la capacidad de reconocer y decodificar automáticamente codificaciones comunes, así que no hay problema si estos archivos contienen muestras codificadas.

Una vez que se lanza la consola de FeatherDuster, estarán disponibles métodos alternativos de importación de texto cifrado, concretamente la capacidad de importar un archivo con muestras separadas por saltos de línea, donde cada línea se tratará como una muestra distinta, así:

root@kitploit:~
68657920636f6f6c
796f752072656164
74686520726561646d65

y la capacidad de especificar un único texto cifrado en FeatherDuster mediante entrada de línea de comandos. Dado que esta entrada terminará en un salto de línea, se recomienda usar algún tipo de codificación en caso de que la muestra contenga un salto de línea.

Uso de Cryptanalib

Cryptanalib puede usarse de forma independiente de FeatherDuster para crear herramientas de ataque criptográfico basadas en Python. La documentación de las funciones de cryptanalib se puede consultar mediante la función help() de Python, así:

root@kitploit:~
>>> import cryptanalib as ca
>>> dir(ca)    # salida editada para un README más limpio
[ ... 'analyze_ciphertext', 'batch_gcd', 'bb98_padding_oracle', 'break_alpha_shift', 'break_ascii_shift', 'break_columnar_transposition', 'break_generic_shift', 'break_many_time_pad', ... ]
>>> help(ca.bb98_padding_oracle)

Help on function bb98_padding_oracle in module cryptanalib:

bb98_padding_oracle(ciphertext, padding_oracle, exponent, modulus, verbose=False, debug=False)
    Bleichenbacher's RSA-PKCS1-v1_5 padding oracle from CRYPTO '98
    
    Given an RSA-PKCS1-v1.5 padding oracle and a ciphertext,
    decrypt the ciphertext.
    
    ciphertext - The ciphertext to decrypt
    padding_oracle - A function that communicates with the padding oracle.
       The function should take a single parameter as the ciphertext, and
       should return either True for good padding or False for bad padding.
    exponent - The public exponent of the keypair
    modulus - The modulus of the keypair
    verbose - (bool) Whether to show verbose output
    debug - (bool) Show very verbose output

El motor de análisis de Cryptanalib

El motor de análisis de Cryptanalib, utilizado por FeatherDuster, puede detectar automáticamente codificaciones y decodificar muestras. El motor asume que todas las muestras se generan con el mismo proceso (por ejemplo, base64encode(aes_encrypt(datum))), pero puede manejar muestras mezcladas hasta cierto punto. Actualmente, Cryptanalib puede detectar y decodificar los siguientes esquemas de codificación:

  • Base64 estándar
  • Codificación hex ASCII
  • Compresión Zlib
  • Codificación URL

El motor de análisis de Cryptanalib también puede detectar una serie de propiedades en la fase de análisis:

  • Texto cifrado con entropía baja (útil para detectar cifrados caseros)
  • Uso de cifrado por bloques frente a cifrado de flujo
  • Modo ECB
  • Modo CBC con IV fijo
  • Algoritmo hash (el motor notará que los ataques de extensión de longitud pueden aplicarse con algoritmos hash basados en Merkle-Damgård)
  • Texto cifrado con formato OpenSSL
  • Reutilización de claves de cifrado de flujo
  • Claves RSA con componentes privados
  • Módulos RSA insuficientemente grandes
  • Reutilización de módulos RSA
  • Cifrado solo por transposición
Descargar herramienta