CVE-2026-12479
Path Traversal in keras-team/keras
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
6.1
Path Traversal in keras-team/keras
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
CVE-2026-12479- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Weakness
- CWE-22
- Updated
- 2026-11-02
EUVDEUVD-2026-38265
6.1
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
EUVD-2026-38265- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-gh82-f9x8-5frx
6.1
Keras: DiskIOStore permits path traversal through crafted layer names
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
GHSA-gh82-f9x8-5frx- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Weakness
- CWE-22
- Updated
- 2026-11-02
NVD
6.1
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
CVE-2026-12479- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Weakness
- CWE-22
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-12479
6.1
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
DEBIAN-CVE-2026-12479- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
OSVGHSA-gh82-f9x8-5frx
6.1
Keras: DiskIOStore permits path traversal through crafted layer names
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
GHSA-gh82-f9x8-5frx- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Weakness
- CWE-22
- Updated
- 2026-11-02
OSVPYSEC-2026-3632
6.1
Keras: DiskIOStore permits path traversal through crafted layer names
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
PYSEC-2026-3632- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-12479
6.1
A path traversal vulnerability exists in keras-team/keras version 3.14.0, specifically in the DiskIOStore.make method within the Keras 3 model saving and loading library. This vulnerability arises from the improper handling of user-provided layer names, which are used to construct directory paths without sanitizing for parent directory components (..). While forward slashes (/) are restricted in layer names, directory traversal sequences are not. This allows an attacker to craft a malicious Keras model that, when saved or loaded, can escape the intended temporary working directory and perform unauthorized file system operations, such as creating directories or writing files in arbitrary locations.
- Record
UBUNTU-CVE-2026-12479- CVSS 3.0
- 6.1 Medium
CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
kerasPyPI |
before 3.12.3 | 3.12.3 |
kerasPyPI |
3.13.0 up to 3.15.0 | 3.15.0 |
kerasDebian:11 |
All versions, plus listed versions 2.3.1+dfsg-32.3.1+dfsg2-1 |
None known |
kerasPyPI |
before 3.12.3, plus listed versions 0.2.00.3.00.3.10.3.20.3.3 Show 45 moreShow less1.0.01.0.11.0.21.0.31.0.41.0.51.0.61.0.71.0.81.1.01.1.11.1.21.2.01.2.11.2.22.0.02.0.12.0.22.0.32.0.42.0.52.0.62.0.72.0.82.0.92.1.02.1.12.1.22.1.32.1.42.1.52.1.62.10.02.10.0rc02.10.0rc12.11.02.11.0rc02.11.0rc12.11.0rc22.11.0rc32.12.02.12.0rc02.12.0rc12.13.12.13.1rc0 |
3.12.3 |
kerasPyPI |
3.13.0 up to 3.15.0, plus listed versions 3.13.13.13.23.14.03.14.1 |
3.15.0 |
kerasPyPI |
before 3.12.3, 3.13.0 up to 3.15.0, plus listed versions 0.2.00.3.00.3.10.3.20.3.3 Show 45 moreShow less1.0.01.0.11.0.21.0.31.0.41.0.51.0.61.0.71.0.81.1.01.1.11.1.21.2.01.2.11.2.22.0.02.0.12.0.22.0.32.0.42.0.52.0.62.0.72.0.82.0.92.1.02.1.12.1.22.1.32.1.42.1.52.1.62.10.02.10.0rc02.10.0rc12.11.02.11.0rc02.11.0rc12.11.0rc22.11.0rc32.12.02.12.0rc02.12.0rc12.13.12.13.1rc0 |
3.12.33.15.0 |
kerasUbuntu:18.04:LTS |
All versions, plus listed versions 1.0.7-22.1.1-1 |
None known |
kerasUbuntu:20.04:LTS |
All versions, plus listed versions 2.2.4-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-12479 is a medium vulnerability (CVSS 6.1) in Keras-team Keras-team/keras, published June 22, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.36%, the 30th percentile. Fixed in keras 3.12.3.
References
huntr.com/bounties/188836b9-12fc-49c7-8dbf-04f60fe33743
nvd.nist.gov/vuln/detail/CVE-2026-12479
github.com/keras-team/keras/pull/23017
github.com/keras-team/keras/commit/d8caeb58cc9e61ea092445dc7a20908ca8d693e2
github.com/keras-team/keras/releases/tag/v3.12.3
github.com/keras-team/keras/releases/tag/v3.15.0
Left out here: 134 versions. The JSON record has them.