{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-90131 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-90131 is a high-severity vulnerability in Linux, published on 17 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-90131 and fix it if it is affected.\n\nWhat it is: CVE-2026-90131 is a high-severity vulnerability in Linux, published on 17 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-90131 in the wild and no public exploit code.\n\nAffected product: Linux. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-90131/ (Markdown: https://insights.sbomify.com/CVE-2026-90131/index.md)","id":"CVE-2026-90131","markdown":"https://insights.sbomify.com/CVE-2026-90131/index.md","name":"CVE-2026-90131","record":{"aliases":["DEBIAN-CVE-2026-90131","GHSA-p65r-ghh2-3f2q","UBUNTU-CVE-2026-90131"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["data_read","denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Linux kernel NTFS driver","requires_auth":"low_privilege","summary":"A race condition in the Linux kernel NTFS driver allows attackers to read torn data or cause a denial of service via concurrent file operations.","user_interaction":"not_required","vuln_class":"race_condition"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[],"cvss":{"score":7.1,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H","version":"3.1"},"cwes":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nntfs: serialize resident iomap reads with mrec_lock\n\nntfs_read_iomap_begin_resident() walks the MFT record through\nntfs_attr_lookup() -\u003e ntfs_attr_find() without taking ni-\u003emrec_lock,\nwhile ntfs_attr_record_resize(), ntfs_make_room_for_attr() and\nntfs_resident_attr_record_add() memmove() the same base_ni-\u003emrec buffer\nunder that lock. map_mft_record() only takes a reference and does not\nserialize, so the reader can observe torn attribute length and offset\nfields while a writer is relocating the records.\n\nKCSAN reports the race between the mmap read fault path and both link()\nand unlink():\n\n  BUG: KCSAN: data-race in ntfs_attr_find / ntfs_attr_record_resize\n\n  write to 0xffff888100af1018 of 4 bytes by task 96 on cpu 1:\n   ntfs_attr_record_resize+0xd2/0x130\n   ntfs_attr_record_rm+0xad/0x530\n   ntfs_delete+0x224/0x640\n   ntfs_unlink+0x14d/0x280\n   vfs_unlink+0x157/0x520\n\n  read to 0xffff888100af1018 of 4 bytes by task 95 on cpu 0:\n   ntfs_attr_find+0x104/0x5b0\n   ntfs_attr_lookup+0x39c/0x10c0\n   ntfs_read_iomap_begin_resident+0xc6/0x230\n   ntfs_read_iomap_begin+0x5d/0xa0\n   iomap_iter+0x2e2/0x6e0\n   iomap_read_folio+0x147/0x2a0\n   ntfs_read_folio+0x108/0x170\n   filemap_read_folio+0x35/0x100\n   filemap_fault+0x993/0x1000\n\n  value changed: 0x00000250 -\u003e 0x000001f0\n\nThe address is mrec + 0x18, i.e. mft_record.bytes_in_use, and the change\nis the 96 bytes of one $FILE_NAME attribute being removed.\n\nKeep base_ni-\u003emrec_lock from the resident read iomap lookup through\niomap_end(). This protects both the attribute walk and the subsequent copy\nfrom iomap-\u003einline_data, which points into the MFT record. The non-resident\npath is left alone: ntfs_lookup() already holds the directory inode's\nmrec_lock when it reads an index folio through read_mapping_folio(), and\ntaking the lock in the shared wrapper deadlocks there with recursive locking\non mrec_lock. The comment above the read_mapping_folio() call in\nfs/ntfs/dir.c notes the same hazard.\n\nThe seek path uses the same lookup helper but does not dereference\niomap-\u003einline_data. Release the lock before returning from that path,\nwhereas the regular read path records base_ni in iomap-\u003eprivate and releases\nthe lock from its iomap_end() callback.\n\nTested with a reproducer that faults in a 16-byte resident file while\nanother thread runs link()/unlink() on it. Before: 40 KCSAN reports in\nabout one second. After: no reports in 180 seconds over 206,090 read\niterations and 423,540 link/unlink cycles. A PROVE_LOCKING build shows no\nlockdep splat with the same reproducer running for 60 seconds.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"ntfs: serialize resident iomap reads with mrec_lock","id":"CVE-2026-90131","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"race_condition","year":"2026"},"n_packages":0,"n_references":2,"next":{"headline":"ntfs: reject unprivileged writes to reserved $LX* xattrs","id":"CVE-2026-90132"},"packages":[],"prev":{"headline":"vdpa_sim: fix cleanup after worker creation failure","id":"CVE-2026-90130"},"products":["Linux"],"published":"2026-09-17","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-10-19","vendors":["Linux"]},"summary":"A race condition in the Linux kernel NTFS driver allows attackers to read torn data or cause a denial of service via concurrent file operations.","url":"https://insights.sbomify.com/CVE-2026-90131/"}