CVE-2022-49007
Severity CVSS v4.0:
Pending analysis
Type:
CWE-476
NULL Pointer Dereference
Publication date:
21/10/2024
Last modified:
25/10/2024
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
nilfs2: fix NULL pointer dereference in nilfs_palloc_commit_free_entry()<br />
<br />
Syzbot reported a null-ptr-deref bug:<br />
<br />
NILFS (loop0): segctord starting. Construction interval = 5 seconds, CP<br />
frequency pr_desc_bh is NULL and blocknr is 0 at nilfs_dat_commit_end() during<br />
a b-tree operation that cascadingly updates ancestor nodes of the b-tree,<br />
because nilfs_dat_commit_alloc() for a lower level block can initialize<br />
the blocknr on the same DAT entry between nilfs_dat_prepare_end() and<br />
nilfs_dat_commit_end().<br />
<br />
If this happens, nilfs_dat_commit_end() calls nilfs_dat_commit_free()<br />
without valid buffer heads in req->pr_desc_bh and req->pr_bitmap_bh, and<br />
causes the NULL pointer dereference above in<br />
nilfs_palloc_commit_free_entry() function, which leads to a crash.<br />
<br />
Fix this by adding a NULL check on req->pr_desc_bh and req->pr_bitmap_bh<br />
before nilfs_palloc_commit_free_entry() in nilfs_dat_commit_free().<br />
<br />
This also calls nilfs_error() in that case to notify that there is a fatal<br />
flaw in the filesystem metadata and prevent further operations.
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
CPE | From | Up to |
---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.9.335 (excluding) | |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.10 (including) | 4.14.301 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.268 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.226 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.158 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.82 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.0.12 (excluding) |
cpe:2.3:o:linux:linux_kernel:6.1:rc1:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc2:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc3:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc4:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc5:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc6:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.1:rc7:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/165c7a3b27a3857ebf57f626b9f38b48b6792e68
- https://git.kernel.org/stable/c/2f2c59506ae39496588ceb8b88bdbdbaed895d63
- https://git.kernel.org/stable/c/33021419fd81efd3d729a7f19341ba4b98fe66ce
- https://git.kernel.org/stable/c/381b84f60e549ea98cec4666c6c728b1b3318756
- https://git.kernel.org/stable/c/9a130b72e6bd1fb07fc3cde839dc6fb53da76f07
- https://git.kernel.org/stable/c/bc3fd3293887b4cf84a9109700faeb82de533c89
- https://git.kernel.org/stable/c/e858917ab785afe83c14f5ac141301216ccda847
- https://git.kernel.org/stable/c/f0a0ccda18d6fd826d7c7e7ad48a6ed61c20f8b4