Keras safe_mode bypass allows arbitrary code execution when loading a malicious model.
Priority HIGH 72CWE-502Published · Updated
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-502.
Summary
A safe mode bypass vulnerability in the `Model.load_model` method in Keras versions 3.0.0 through 3.10.0 allows an attacker to achieve arbitrary code execution by convincing a user to load a specially crafted `.keras` model archive.
Why it matters now
Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00124 2nd percentileScored 2026-11-07
Fix Fixed keras (PyPI): 3.11.0
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Keras | 3.0.0 – 3.10.0 | — | No fix listed | CNA | |
| — | keras (PyPI) | 3.0.0 to before 3.11.0 | 3.11.0 | Patch available | GHSA-c9rc-mg46-23w3 |
- Keras VendorGoogle Affected 3.0.0 – 3.10.0 Fixed in — No fix listed CNA
- keras (PyPI) Vendor— Affected 3.0.0 to before 3.11.0 Fixed in 3.11.0 Patch available GHSA-c9rc-mg46-23w3
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:keras:keras:*:*:*:*:*:*:*:* | 3.0.0 – 3.10.0 | Vulnerable | keras-team |
- cpe:2.3:a:keras:keras:*:*:*:*:*:*:*:* Versions 3.0.0 – 3.10.0 Vulnerable ·keras-team
Remediation
- Fix · GHSA-c9rc-mg46-23w3 keras (PyPI) Fixed in 3.11.0 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2025-8747
- 2026-10-03 Alias added: GHSA-c9rc-mg46-23w3
References
Advisory 2
Other 5
- https://github.com/keras-team/keras/security/advisories/GHSA-c9rc-mg46-23w3
- https://github.com/keras-team/keras/commit/713172ab56b864e59e2aa79b1a51b0e728bba858
- https://github.com/keras-team/keras
- https://github.com/pypa/advisory-database/tree/main/vulns/keras/PYSEC-2025-75.yaml
- https://jfrog.com/blog/keras-safe_mode-bypass-vulnerability
More Google vulnerabilities
- TI-2025-09686 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.8
- TI-2024-07390 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
- TI-2024-04898 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
- TI-2024-04600 Type confusion in Google Chrome KEVCVSS 3.1CRITICAL 9.6
- TI-2024-04346 Use after free in Google Chrome KEVCVSS 3.1CRITICAL 9.6
- TI-2023-05824 Integer overflow in Google Chrome KEVCVSS 3.1CRITICAL 9.6
Sources
- CVE-2025-8747 · CVE Program
- CVE-2025-8747 · NVD
- FIRST EPSS
- GHSA-c9rc-mg46-23w3 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences