CVE-2026-10645: bounds in zephyrproject zephyr
The Zephyr ext2 filesystem driver (subsys/fs/ext2) trusted the on-disk directory entry fields de_rec_len and de_name_len when walking a directory block. ext2_fetch_direntry() guarded only with de_name_len > EXT2_MAX_FILE_NAME, but de_name_len is a uint8_t and EXT2_MAX_FILE_NAME is 255, so the check is always false; the function then memcpy'd up to 255 name bytes and the lookup/readdir paths advanced traversal by an unvalidated de_rec_len. Each directory block is read into a block_size-sized slab buffer, and block_off can be driven near the block end by preceding entries' rec_len, so the 8-byte header read and the subsequent name memcpy can read up to ~263 bytes past the end of the block buffer into adjacent heap/slab memory. On the readdir path those bytes are returned to the caller in fs_dirent.name, leaking adjacent kernel heap memory; a de_rec_len of 0 also causes a zero-progress infinite loop (denial of service), and the unlink path's memmove(de, next, next_reclen) over unvalidated records is an additional OOB read/write source. The defect is reached by any path-based operation (open, stat, unlink, rename, mkdir) or directory listing on a mounted ext2 volume, so a crafted or corrupted ext2 image on attacker-supplied storage (SD card, USB mass storage, or otherwise mounted image) triggers it. Affected: Zephyr ext2 from its introduction in v3.5.0 through v4.4.0. The fix validates rec_len and name_len in the parser and rejects entries whose header does not fit the remaining block or whose rec_len crosses the block boundary in every traversal caller.
AI Analysis
Technical Summary
The Zephyr ext2 filesystem driver (subsys/fs/ext2) improperly trusts the on-disk directory entry fields de_rec_len and de_name_len when traversing directory blocks. The function ext2_fetch_direntry() only checks if de_name_len is greater than EXT2_MAX_FILE_NAME (255), but since de_name_len is a uint8_t, this check is always false. Consequently, the code copies up to 255 bytes for the name without proper bounds checking and advances traversal by an unvalidated de_rec_len. This can cause reads and writes beyond the allocated block buffer, leaking adjacent kernel heap memory on directory reads and causing infinite loops or out-of-bounds memory operations on other paths. The vulnerability is reachable by any path-based operation on a mounted ext2 volume with a crafted or corrupted image. The affected versions are from Zephyr ext2 introduction in v3.5.0 through v4.4.0. The fix involves validating rec_len and name_len to reject malformed entries that cross block boundaries.
Potential Impact
An attacker supplying a crafted or corrupted ext2 filesystem image can cause out-of-bounds reads that leak kernel heap memory, leading to information disclosure. Additionally, a zero de_rec_len value can cause an infinite loop, resulting in denial of service. Out-of-bounds writes can also occur, potentially destabilizing the system. The vulnerability affects all path-based operations on the ext2 filesystem, including open, stat, unlink, rename, mkdir, and directory listing.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The vendor has described a fix that validates rec_len and name_len fields to reject malformed directory entries, but no official patch or update link is provided in the current data. Until a patch is available, avoid mounting untrusted ext2 filesystem images in affected Zephyr versions.
CVE-2026-10645: bounds in zephyrproject zephyr
Description
The Zephyr ext2 filesystem driver (subsys/fs/ext2) trusted the on-disk directory entry fields de_rec_len and de_name_len when walking a directory block. ext2_fetch_direntry() guarded only with de_name_len > EXT2_MAX_FILE_NAME, but de_name_len is a uint8_t and EXT2_MAX_FILE_NAME is 255, so the check is always false; the function then memcpy'd up to 255 name bytes and the lookup/readdir paths advanced traversal by an unvalidated de_rec_len. Each directory block is read into a block_size-sized slab buffer, and block_off can be driven near the block end by preceding entries' rec_len, so the 8-byte header read and the subsequent name memcpy can read up to ~263 bytes past the end of the block buffer into adjacent heap/slab memory. On the readdir path those bytes are returned to the caller in fs_dirent.name, leaking adjacent kernel heap memory; a de_rec_len of 0 also causes a zero-progress infinite loop (denial of service), and the unlink path's memmove(de, next, next_reclen) over unvalidated records is an additional OOB read/write source. The defect is reached by any path-based operation (open, stat, unlink, rename, mkdir) or directory listing on a mounted ext2 volume, so a crafted or corrupted ext2 image on attacker-supplied storage (SD card, USB mass storage, or otherwise mounted image) triggers it. Affected: Zephyr ext2 from its introduction in v3.5.0 through v4.4.0. The fix validates rec_len and name_len in the parser and rejects entries whose header does not fit the remaining block or whose rec_len crosses the block boundary in every traversal caller.
CVSS v3.1
Score 4.9medium
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Zephyr ext2 filesystem driver (subsys/fs/ext2) improperly trusts the on-disk directory entry fields de_rec_len and de_name_len when traversing directory blocks. The function ext2_fetch_direntry() only checks if de_name_len is greater than EXT2_MAX_FILE_NAME (255), but since de_name_len is a uint8_t, this check is always false. Consequently, the code copies up to 255 bytes for the name without proper bounds checking and advances traversal by an unvalidated de_rec_len. This can cause reads and writes beyond the allocated block buffer, leaking adjacent kernel heap memory on directory reads and causing infinite loops or out-of-bounds memory operations on other paths. The vulnerability is reachable by any path-based operation on a mounted ext2 volume with a crafted or corrupted image. The affected versions are from Zephyr ext2 introduction in v3.5.0 through v4.4.0. The fix involves validating rec_len and name_len to reject malformed entries that cross block boundaries.
Potential Impact
An attacker supplying a crafted or corrupted ext2 filesystem image can cause out-of-bounds reads that leak kernel heap memory, leading to information disclosure. Additionally, a zero de_rec_len value can cause an infinite loop, resulting in denial of service. Out-of-bounds writes can also occur, potentially destabilizing the system. The vulnerability affects all path-based operations on the ext2 filesystem, including open, stat, unlink, rename, mkdir, and directory listing.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The vendor has described a fix that validates rec_len and name_len fields to reject malformed directory entries, but no official patch or update link is provided in the current data. Until a patch is available, avoid mounting untrusted ext2 filesystem images in affected Zephyr versions.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- zephyr
- Date Reserved
- 2026-06-02T15:11:47.668Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a39d22ceed863c81e9d9250
Added to database: 06/23/2026, 00:24:12 UTC
Last enriched: 07/15/2026, 10:46:31 UTC
Last updated: 08/06/2026, 00:41:10 UTC
Views: 112
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.