1. Descripción técnica
CVE-2021-22204 es una vulnerabilidad de ejecución de código en el procesamiento de metadatos DjVu de ExifTool. Afecta versiones desde 7.44 hasta antes de 12.24. Una cadena maliciosa alcanza lógica Perl que intenta neutralizarla antes de evaluarla, pero una delimitación incorrecta permite escapar del contenido esperado.
El archivo puede llegar como DjVu o estar incorporado en otro formato que ExifTool inspeccione. El código se ejecuta con la identidad del proceso que analiza el archivo.
1.1. Mecanismo
// renderizando diagrama…
2. Impacto
Permite ejecutar código con los permisos del proceso que invoca ExifTool. En un servicio de carga compromete la cuenta de la aplicación; si una regla privilegiada procesa el archivo como root, el impacto alcanza UID 0.
3. Condiciones necesarias
- ExifTool se encuentra en una versión afectada.
- El atacante controla un archivo que será procesado.
- El flujo alcanza el parser DjVu vulnerable.
- El proceso posee permisos útiles para el objetivo.
4. Validación y detección
La versión ayuda a delimitar exposición, pero no sustituye la validación del flujo. Se debe confirmar qué binario procesa archivos, qué formatos acepta y con qué identidad se ejecuta. La prueba controlada debe usar una acción inocua y observar su efecto.
5. Explotación documentada en los writeups
5.1. 067-dejavu
ExifTool 12.23 está autorizado mediante sudo. Un DjVu malicioso genera una conexión ejecutada por el proceso de root.
6. Mitigación
- Actualizar ExifTool a 12.24 o una versión posterior mantenida.
- Procesar archivos no confiables con una cuenta aislada y privilegios mínimos.
- No autorizar ExifTool sin restricciones mediante sudo.
- Limitar tipos de archivo y aplicar defensa en profundidad sin confiar sólo en la extensión.
7. Clasificación
- CVE: CVE-2021-22204 en NVD
- CWE: CWE-94, Improper Control of Generation of Code
- Versiones afectadas: ExifTool 7.44 a 12.23
- Primer parche: ExifTool 12.24