In the Linux kernel, the following vulnerability has been resolved:
nilfs2: fix kernel bug due to missing clearing of checked flag
Syzbot reported that in directory operations after nilfs2 detects filesystem corruption and degrades to read-only, __blockwritebeginint(), which is called to prepare block writes, may fail the BUGON check for accesses exceeding the folio/page size, triggering a kernel bug.
This was found to be because the "checked" flag of a page/folio was not cleared when it was discarded by nilfs2's own routine, which causes the sanity check of directory entries to be skipped when the directory page/folio is reloaded. So, fix that.
This was necessary when the use of nilfs2's own page discard routine was applied to more than just metadata files.
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/50xxx/CVE-2024-50230.json"
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-50230.json"
[
{
"signature_version": "v1",
"target": {
"file": "fs/nilfs2/page.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@56c6171932a7fb267ac6cb4ff8759b93ee1d0e2e",
"deprecated": false,
"digest": {
"line_hashes": [
"271076028128469250448466260006853144386",
"235581372804687797286707360420011156419",
"172039248725098187799293956610493875043",
"240215231564929181045590078264659490281"
],
"threshold": 0.9
},
"id": "CVE-2024-50230-7f152132",
"signature_type": "Line"
},
{
"signature_version": "v1",
"target": {
"file": "fs/nilfs2/page.c",
"function": "nilfs_clear_folio_dirty"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@56c6171932a7fb267ac6cb4ff8759b93ee1d0e2e",
"deprecated": false,
"digest": {
"function_hash": "158220764716419346918470132144183160508",
"length": 934.0
},
"id": "CVE-2024-50230-efe51457",
"signature_type": "Function"
}
]