CVE-2024-36943

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-36943
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-36943.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-36943
Downstream
Published
2024-05-30T15:35:42.119Z
Modified
2025-11-20T04:30:49.997962Z
Summary
fs/proc/task_mmu: fix loss of young/dirty bits during pagemap scan
Details

In the Linux kernel, the following vulnerability has been resolved:

fs/proc/task_mmu: fix loss of young/dirty bits during pagemap scan

makeuffdwp_pte() was previously doing:

pte = ptepget(ptep); ptepmodifyprotstart(ptep); pte = ptemkuffdwp(pte); ptepmodifyprot_commit(ptep, pte);

But if another thread accessed or dirtied the pte between the first 2 calls, this could lead to loss of that information. Since ptepmodifyprot_start() gets and clears atomically, the following is the correct pattern and prevents any possible race. Any access after the first call would see an invalid pte and cause a fault:

pte = ptepmodifyprotstart(ptep); pte = ptemkuffdwp(pte); ptepmodifyprotcommit(ptep, pte);

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
52526ca7fdb905a768a93f8faa418e9b988fc34b
Fixed
74b3d66f91d9f539f99faad74d796fa9a389a015
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
52526ca7fdb905a768a93f8faa418e9b988fc34b
Fixed
c70dce4982ce1718bf978a35f8e26160b82081f4

Affected versions

v6.*

v6.6
v6.6-rc5
v6.6-rc6
v6.6-rc7
v6.7
v6.7-rc1
v6.7-rc2
v6.7-rc3
v6.7-rc4
v6.7-rc5
v6.7-rc6
v6.7-rc7
v6.7-rc8
v6.8
v6.8-rc1
v6.8-rc2
v6.8-rc3
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.8.1
v6.8.2
v6.8.3
v6.8.4
v6.8.5
v6.8.6
v6.8.7
v6.8.8
v6.8.9
v6.9-rc1
v6.9-rc2
v6.9-rc3
v6.9-rc4

Database specific

vanir_signatures

[
    {
        "deprecated": false,
        "signature_version": "v1",
        "digest": {
            "threshold": 0.9,
            "line_hashes": [
                "178149443372465452950006555662685828140",
                "259174068185066441737480883071601879488",
                "154387457119575594475612024270051455521",
                "123040074461021125722855029099230285685"
            ]
        },
        "id": "CVE-2024-36943-fc71f587",
        "signature_type": "Line",
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@74b3d66f91d9f539f99faad74d796fa9a389a015",
        "target": {
            "file": "fs/proc/task_mmu.c"
        }
    }
]

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.8.10