Arbitrary Code Execution via Crafted Keras Config for Model Loading
### 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