CVE-2022-50864
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
nilfs2: fix shift-out-of-bounds due to too large exponent of block size
If field s_log_block_size of superblock data is corrupted and too large, init_nilfs() and load_nilfs() still can trigger a shift-out-of-bounds warning followed by a kernel panic (if panic_on_warn is set):
shift exponent 38973 is too large for 32-bit type 'int' Call Trace: <TASK> dump_stack_lvl+0xcd/0x134 ubsan_epilogue+0xb/0x50 __ubsan_handle_shift_out_of_bounds.cold.12+0x17b/0x1f5 init_nilfs.cold.11+0x18/0x1d [nilfs2] nilfs_mount+0x9b5/0x12b0 [nilfs2] …
This fixes the issue by adding and using a new helper function for getting block size with sanity check.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 8a9d2191e9f43bbcd256a9a6871bd73434c83f2f < ec93b5430ec0f60877a5388bb023d60624f9ab9f | affected |
| Linux | Linux | 8a9d2191e9f43bbcd256a9a6871bd73434c83f2f < 8b6ef451b5701b37d9a5905534595776a662edfc | affected |
| Linux | Linux | 8a9d2191e9f43bbcd256a9a6871bd73434c83f2f < ddb6615a168f97b91175e00eda4c644741cf531c | affected |
| Linux | Linux | 8a9d2191e9f43bbcd256a9a6871bd73434c83f2f < a16731fa1b96226c75bbf18e73513b14fc318360 | affected |
| Linux | Linux | 8a9d2191e9f43bbcd256a9a6871bd73434c83f2f < ebeccaaef67a4895d2496ab8d9c2fb8d89201211 | affected |
| Linux | Linux | 2.6.30 | affected |
| Linux | Linux | 0 < 2.6.30 | unaffected |
| Linux | Linux | 5.10.163 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.86 <= 5.15.* | unaffected |
| Linux | Linux | 6.0.16 <= 6.0.* | unaffected |
| Linux | Linux | 6.1.2 <= 6.1.* | unaffected |
| Linux | Linux | 6.2 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/ec93b5430ec0f60877a5388bb023d60624f9ab9f
- https://git.kernel.org/stable/c/8b6ef451b5701b37d9a5905534595776a662edfc
- https://git.kernel.org/stable/c/ddb6615a168f97b91175e00eda4c644741cf531c
- https://git.kernel.org/stable/c/a16731fa1b96226c75bbf18e73513b14fc318360
- https://git.kernel.org/stable/c/ebeccaaef67a4895d2496ab8d9c2fb8d89201211
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.