Skip to content
KerasGHSA-48g7-3x6r-xfhp

Arbitrary Code Execution via Crafted Keras Config for Model Loading

HighCVE-2025-1550 · Published Mar 11, 2025 · updated Sep 10, 2026

### Impact 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. ### Patches This problem is fixed starting with version `3.9`. ### Workarounds Only load models from trusted sources and model archives created with Keras. ### References - https://www.cve.org/cverecord?id=CVE-2025-1550 - https://github.com/keras-team/keras/pull/20751

GitHub advisory

Affected versions

PackageAffectedFixed in
keras
PyPI
>= 3.0.0, < 3.9.03.9.0
Details and references

More Keras advisories

All Keras
Advisory
Keras is vulnerable to arbitrary local file loading and Server-Side Request Forgery
MediumOct 29, 2025
Keras framework vulnerable to deserialization of untrusted data
Critical9.8Oct 17, 2025
Keras: code execution
HighSep 19, 2025
Keras is vulnerable to Deserialization of Untrusted Data
High7.3Sep 19, 2025
Keras vulnerable to CVE-2025-1550 bypass via reuse of internal functionality
High8.8Aug 12, 2025
keras Path Traversal vulnerability
MediumJan 8, 2025

Critical advisories by email

Wednesdays: the week’s critical and high advisories in the AI and data stack, with the fixed versions. Only in weeks that have some.

Double opt-in. Unsubscribe any time.