ghsa-jvhc-rq6w-32mx
Vulnerability from github
In the Linux kernel, the following vulnerability has been resolved:
nilfs2: do not write dirty data after degenerating to read-only
According to syzbot's report, mark_buffer_dirty() called from nilfs_segctor_do_construct() outputs a warning with some patterns after nilfs2 detects metadata corruption and degrades to read-only mode.
After such read-only degeneration, page cache data may be cleared through nilfs_clear_dirty_page() which may also clear the uptodate flag for their buffer heads. However, even after the degeneration, log writes are still performed by unmount processing etc., which causes mark_buffer_dirty() to be called for buffer heads without the "uptodate" flag and causes the warning.
Since any writes should not be done to a read-only file system in the first place, this fixes the warning in mark_buffer_dirty() by letting nilfs_segctor_do_construct() abort early if in read-only mode.
This also changes the retry check of nilfs_segctor_write_out() to avoid unnecessary log write retries if it detects -EROFS that nilfs_segctor_do_construct() returned.
{ "affected": [], "aliases": [ "CVE-2023-53337" ], "database_specific": { "cwe_ids": [], "github_reviewed": false, "github_reviewed_at": null, "nvd_published_at": "2025-09-17T15:15:36Z", "severity": null }, "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nnilfs2: do not write dirty data after degenerating to read-only\n\nAccording to syzbot\u0027s report, mark_buffer_dirty() called from\nnilfs_segctor_do_construct() outputs a warning with some patterns after\nnilfs2 detects metadata corruption and degrades to read-only mode.\n\nAfter such read-only degeneration, page cache data may be cleared through\nnilfs_clear_dirty_page() which may also clear the uptodate flag for their\nbuffer heads. However, even after the degeneration, log writes are still\nperformed by unmount processing etc., which causes mark_buffer_dirty() to\nbe called for buffer heads without the \"uptodate\" flag and causes the\nwarning.\n\nSince any writes should not be done to a read-only file system in the\nfirst place, this fixes the warning in mark_buffer_dirty() by letting\nnilfs_segctor_do_construct() abort early if in read-only mode.\n\nThis also changes the retry check of nilfs_segctor_write_out() to avoid\nunnecessary log write retries if it detects -EROFS that\nnilfs_segctor_do_construct() returned.", "id": "GHSA-jvhc-rq6w-32mx", "modified": "2025-09-17T15:30:38Z", "published": "2025-09-17T15:30:38Z", "references": [ { "type": "ADVISORY", "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-53337" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/13f73ef77baa4764dc1ca4fcbae9cade05b83866" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/28a65b49eb53e172d23567005465019658bfdb4d" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/4005cec6847c06ee191583270b7cdd7e696543cc" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/4569a292a84e340e97d178898ad1cfe1a3080a61" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/55f7810632f993cff622a0ddbc7c865892294b61" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/7c3e662048053802f6b0db3a78e97f4e1f7edc4f" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/a73201c607d8e506358d60aafddda4246bdd9350" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/bd89073fc7a5d03b1d06b372addbe405e5a925f4" }, { "type": "WEB", "url": "https://git.kernel.org/stable/c/e9c5412c5972124776c1b873533eb39e287a4dfa" } ], "schema_version": "1.4.0", "severity": [] }
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.