CVE-2026-53130
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
fs/omfs: reject s_sys_blocksize smaller than OMFS_DIR_START
omfs_fill_super() rejects oversized s_sys_blocksize values (> PAGE_SIZE), but it does not reject values smaller than OMFS_DIR_START (0x1b8 = 440).
Later, omfs_make_empty() uses
sbi->s_sys_blocksize - OMFS_DIR_START
as the length argument to memset(). Since s_sys_blocksize is u32, a crafted filesystem image with s_sys_blocksize < OMFS_DIR_START causes an unsigned underflow there, wrapping to a value near 2^32. That drives a ~4 GiB memset() from bh->b_data + OMFS_DIR_START and overwrites kernel memory far beyond the backing block buffer.
Add the corresponding lower-bound check alongside the existing upper-bound check in omfs_fill_super(), so that malformed images are rejected during superblock validation before any filesystem data is processed.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < fbc72f5c645155dc2ed3573243ed20f9913e3a54 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 5822a05a841a10794ad818620dd2af490b0705d3 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 754ff1bea3819a90c6f33cccfc1a299ef7609f07 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 131ea3e57fc22936ed0e2c8330f2e36106172f51 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 79f84af38c9fef9deb0e02c79eb969b5541c2644 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 6561afc38398e3518a29c5eebb975c30468f98a6 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 817f16ed62bc58a168417bfb5e859c2a370bab03 | affected |
| Linux | Linux | a3ab7155ea21aadc8a4d5687e91b3d876973185e < 0621c385fda1376e967f37ccd534c26c3e511d14 | affected |
| Linux | Linux | 2.6.27 | affected |
| Linux | Linux | 0 < 2.6.27 | unaffected |
| Linux | Linux | 5.10.258 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.209 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.175 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.141 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.91 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.33 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.10 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/fbc72f5c645155dc2ed3573243ed20f9913e3a54
- https://git.kernel.org/stable/c/5822a05a841a10794ad818620dd2af490b0705d3
- https://git.kernel.org/stable/c/754ff1bea3819a90c6f33cccfc1a299ef7609f07
- https://git.kernel.org/stable/c/131ea3e57fc22936ed0e2c8330f2e36106172f51
- https://git.kernel.org/stable/c/79f84af38c9fef9deb0e02c79eb969b5541c2644
- https://git.kernel.org/stable/c/6561afc38398e3518a29c5eebb975c30468f98a6
- https://git.kernel.org/stable/c/817f16ed62bc58a168417bfb5e859c2a370bab03
- https://git.kernel.org/stable/c/0621c385fda1376e967f37ccd534c26c3e511d14
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.