Keras is vulnerable to Deserialization of Untrusted Data
Arbitrary Code Execution in Keras
Keras versions prior to 3.11.0 allow for arbitrary code execution when loading a crafted .keras model archive, even when safe_mode=True.
The issue arises because the archive’s config.json is parsed before layer deserialization. This can invoke keras.config.enable_unsafe_deserialization(), effectively disabling safe mode from within the loading process itself. An attacker can place this call first in the archive and then include a Lambda layer whose function is deserialized from a pickle, leading to the execution of attacker-controlled Python code as soon as a victim loads the model file.
Exploitation requires a user to open an untrusted model; no additional privileges are needed. The fix in version 3.11.0 enforces safe-mode semantics before reading any user-controlled configuration and prevents the toggling of unsafe deserialization via the config file.
Affected versions: < 3.11.0 Patched version: 3.11.0
It is recommended to upgrade to version 3.11.0 or later and to avoid opening untrusted model files.
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Python (PyPI) | keras | < 3.11.0 | 3.11.0 |
Referencias
- https://github.com/keras-team/keras/pull/21429
- https://github.com/advisories/GHSA-36fq-jgmw-4r9c
- https://nvd.nist.gov/vuln/detail/CVE-2025-9906
- https://github.com/keras-team/keras/commit/713172ab56b864e59e2aa79b1a51b0e728bba858
- https://github.com/keras-team/keras
- https://github.com/keras-team/keras/releases/tag/v3.11.0
- https://github.com/pypa/advisory-database/tree/main/vulns/keras/PYSEC-2025-76.yaml
- https://osv.dev/vulnerability/CVE-2025-9906
- Vector CVSS
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H- Debilidad (CWE)
CWE-502- Plataforma
- Python (PyPI)
- Paquete
keras- Publicada
- 19.09.2025
- Actualizado
- 11.10.2026 15:17
Fuentes y licencias
OSV / GitHub Advisory Database - PYSEC-2025-76 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-36fq-jgmw-4r9c - CC BY 4.0
Historial de vulnerabilidades: keras
Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 20
- Primera → última
- 04.2024 08.2026
- Sin corrección
- 1
- Explotada en ataques
- 0
Distribución por gravedad
- Crítica 2
- Alta 11
- Media 6
- Baja 1
Divulgaciones por año
- 2024: 1
- 2025: 8
- 2026: 11
-
Keras is vulnerable to Deserialization of Untrusted Data esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.