
Prueba de concepto de exploit para CVE-2026-26215, una vulnerabilidad de ejecución remota de código no autenticada en manga-image-translator mediante deserialización insegura de pickle.
Instagram: @banyamer_security
GitHub: @mbanyamer
Prueba de concepto del exploit para CVE-2026-26215 - Ejecución remota de código no autenticada mediante deserialización insegura de Pickle en manga-image-translator ≤ beta-0.3.
CVE-2026-26215 es una vulnerabilidad de ejecución remota de código no autenticada en versiones ≤ beta-0.3 que se ejecuta en modo API compartida.
Los endpoints /execute/{method_name} y /simple_execute/{method_name} deserializan cuerpos de solicitud controlados por el atacante usando pickle.loads() sin ninguna validación. El mecanismo de autenticación basado en nonce se omite por completo, ya que su valor predeterminado es una cadena vacía.
Esto permite:
| Estado | Versión |
|---|---|
| ❌ Vulnerable | manga-image-translator ≤ beta-0.3 |
| ✅ Parcheada | Aún no publicada |
Probado en: Docker (zyddnys/manga-image-translator:main), Linux
| Vector | Descripción |
|---|---|
| CVSS v4 | 9.3 (Crítico) - AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H |
| Autenticación | Ninguna - Completamente no autenticada |
| Vector de ataque | Red |
| Complejidad | Baja |
pickle.loads(await request.body()) se llama directamente sobre la entrada del atacanteself.nonce tiene como valor predeterminado None, omitiendo por completo la verificación del nonce/execute/ y /simple_execute/ expuestos sin controles de acceso adecuadosgraph LR
A[Attacker crafts malicious pickle payload] --> B[Sends POST request to /execute/translate]
B --> C[Server calls pickle.loads on request body]
C --> D[__reduce__ method executes]
D --> E[os.system called with attacker command]
E --> F[Remote code execution]