CVE-2025-1550

The Keras Model.load_model function permits arbitrary code execution, even with safe_mode=True, through a manually constructed, malicious .keras archive. By altering the config.json file within the archive, an attacker can specify arbitrary Python modules and functions, along with their arguments, to be loaded and executed during model loading.
References
Link Resource
https://github.com/keras-team/keras/pull/20751 Issue Tracking Patch
https://towerofhanoi.it/writeups/cve-2025-1550/ Exploit Third Party Advisory
Configurations

Configuration 1 (hide)

cpe:2.3:a:keras:keras:*:*:*:*:*:*:*:*

History

31 Jul 2025, 16:55

Type Values Removed Values Added
References () https://github.com/keras-team/keras/pull/20751 - () https://github.com/keras-team/keras/pull/20751 - Issue Tracking, Patch
References () https://towerofhanoi.it/writeups/cve-2025-1550/ - () https://towerofhanoi.it/writeups/cve-2025-1550/ - Exploit, Third Party Advisory
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 9.8
First Time Keras
Keras keras
CPE cpe:2.3:a:keras:keras:*:*:*:*:*:*:*:*

22 Jul 2025, 16:15

Type Values Removed Values Added
References
  • () https://towerofhanoi.it/writeups/cve-2025-1550/ -
Summary
  • (es) La función Keras Model.load_model permite la ejecución de código arbitrario, incluso con safe_mode=True, a través de un archivo .keras malicioso creado manualmente. Al alterar el archivo config.json dentro del archivo, un atacante puede especificar módulos y funciones Python arbitrarios, junto con sus argumentos, para que se carguen y ejecuten durante la carga del modelo.

11 Mar 2025, 09:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-03-11 09:15

Updated : 2025-07-31 16:55


NVD link : CVE-2025-1550

Mitre link : CVE-2025-1550

CVE.ORG link : CVE-2025-1550


JSON object : View

Products Affected

keras

  • keras
CWE
CWE-94

Improper Control of Generation of Code ('Code Injection')