{"api_version":"1","generated_at":"2026-08-22T16:05:18+00:00","cve":"CVE-2021-47461","urls":{"html":"https://cve.report/CVE-2021-47461","api":"https://cve.report/api/cve/CVE-2021-47461.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2021-47461","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2021-47461"},"summary":{"title":"userfaultfd: fix a race between writeprotect and exit_mmap()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nuserfaultfd: fix a race between writeprotect and exit_mmap()\n\nA race is possible when a process exits, its VMAs are removed by\nexit_mmap() and at the same time userfaultfd_writeprotect() is called.\n\nThe race was detected by KASAN on a development kernel, but it appears\nto be possible on vanilla kernels as well.\n\nUse mmget_not_zero() to prevent the race as done in other userfaultfd\noperations.","state":"PUBLISHED","assigner":"Linux","published_at":"2024-05-22 07:15:11","updated_at":"2026-08-04 10:17:04"},"problem_types":["CWE-362"],"metrics":[{"version":"3.1","source":"nvd@nist.gov","type":"Primary","score":"4.7","severity":"MEDIUM","vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","baseScore":4.7,"baseSeverity":"MEDIUM","attackVector":"LOCAL","attackComplexity":"HIGH","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"HIGH"}},{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/3cda4bfffd4f755645577aaa9e96a606657b4525","name":"https://git.kernel.org/stable/c/3cda4bfffd4f755645577aaa9e96a606657b4525","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/149958ecd0627a9f1e9c678c25c665400054cd6a","name":"https://git.kernel.org/stable/c/149958ecd0627a9f1e9c678c25c665400054cd6a","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/cb185d5f1ebf900f4ae3bf84cee212e6dd035aca","name":"https://git.kernel.org/stable/c/cb185d5f1ebf900f4ae3bf84cee212e6dd035aca","refsource":"af854a3a-2127-422b-91ae-364da2661108","tags":["Patch"],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-47461","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-47461","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63b2d4174c4ad1f40b48d7138e71bcb564c1fe03 3cda4bfffd4f755645577aaa9e96a606657b4525 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63b2d4174c4ad1f40b48d7138e71bcb564c1fe03 149958ecd0627a9f1e9c678c25c665400054cd6a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63b2d4174c4ad1f40b48d7138e71bcb564c1fe03 cb185d5f1ebf900f4ae3bf84cee212e6dd035aca git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.7","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.7 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.76 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.14.15 5.14.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2021","cve_id":"47461","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"o","cpe4":"linux","cpe5":"linux_kernel","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2021-47461","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2024-05-22T18:15:05.306200Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2024-06-04T17:15:25.867Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"title":"CISA ADP Vulnrichment"},{"providerMetadata":{"dateUpdated":"2024-08-04T05:39:59.468Z","orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE"},"references":[{"tags":["x_transferred"],"url":"https://git.kernel.org/stable/c/3cda4bfffd4f755645577aaa9e96a606657b4525"},{"tags":["x_transferred"],"url":"https://git.kernel.org/stable/c/149958ecd0627a9f1e9c678c25c665400054cd6a"},{"tags":["x_transferred"],"url":"https://git.kernel.org/stable/c/cb185d5f1ebf900f4ae3bf84cee212e6dd035aca"}],"title":"CVE Program Container"}],"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["fs/userfaultfd.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"3cda4bfffd4f755645577aaa9e96a606657b4525","status":"affected","version":"63b2d4174c4ad1f40b48d7138e71bcb564c1fe03","versionType":"git"},{"lessThan":"149958ecd0627a9f1e9c678c25c665400054cd6a","status":"affected","version":"63b2d4174c4ad1f40b48d7138e71bcb564c1fe03","versionType":"git"},{"lessThan":"cb185d5f1ebf900f4ae3bf84cee212e6dd035aca","status":"affected","version":"63b2d4174c4ad1f40b48d7138e71bcb564c1fe03","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["fs/userfaultfd.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.7"},{"lessThan":"5.7","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.76","versionType":"semver"},{"lessThanOrEqual":"5.14.*","status":"unaffected","version":"5.14.15","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"5.15","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.76","versionStartIncluding":"5.7","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.14.15","versionStartIncluding":"5.7","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15","versionStartIncluding":"5.7","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nuserfaultfd: fix a race between writeprotect and exit_mmap()\n\nA race is possible when a process exits, its VMAs are removed by\nexit_mmap() and at the same time userfaultfd_writeprotect() is called.\n\nThe race was detected by KASAN on a development kernel, but it appears\nto be possible on vanilla kernels as well.\n\nUse mmget_not_zero() to prevent the race as done in other userfaultfd\noperations."}],"metrics":[{"cvssV3_1":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"providerMetadata":{"dateUpdated":"2026-08-04T09:00:51.812Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/3cda4bfffd4f755645577aaa9e96a606657b4525"},{"url":"https://git.kernel.org/stable/c/149958ecd0627a9f1e9c678c25c665400054cd6a"},{"url":"https://git.kernel.org/stable/c/cb185d5f1ebf900f4ae3bf84cee212e6dd035aca"}],"title":"userfaultfd: fix a race between writeprotect and exit_mmap()","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2021-47461","datePublished":"2024-05-22T06:23:22.373Z","dateReserved":"2024-05-22T06:20:56.197Z","dateUpdated":"2026-08-04T09:00:51.812Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2024-05-22 07:15:11","lastModifiedDate":"2026-08-04 10:17:04","problem_types":["CWE-362"],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":1.8,"impactScore":5.9},{"source":"nvd@nist.gov","type":"Primary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","baseScore":4.7,"baseSeverity":"MEDIUM","attackVector":"LOCAL","attackComplexity":"HIGH","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"HIGH"},"exploitabilityScore":1,"impactScore":3.6}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2024-05-22T18:15:05.306200Z","id":"CVE-2021-47461","options":[{"exploitation":"none"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.10.76","matchCriteriaId":"337EB464-BC23-4BF5-B901-A933B3ABA6A7"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.11","versionEndExcluding":"5.14.15","matchCriteriaId":"63BD46C4-473F-45F9-93E9-F67D955321D8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc1:*:*:*:*:*:*","matchCriteriaId":"E46C74C6-B76B-4C94-A6A4-FD2FFF62D644"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc2:*:*:*:*:*:*","matchCriteriaId":"60134C3A-06E4-48C1-B04F-2903732A4E56"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc3:*:*:*:*:*:*","matchCriteriaId":"0460DA88-8FE1-46A2-9DDA-1F1ABA552E71"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc4:*:*:*:*:*:*","matchCriteriaId":"AF55383D-4DF2-45DC-93F7-571F4F978EAB"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc5:*:*:*:*:*:*","matchCriteriaId":"9E9481B2-8AA6-4CBD-B5D3-C10F51FF6D01"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:5.15:rc6:*:*:*:*:*:*","matchCriteriaId":"EBD45831-4B79-42BC-ABC0-86870F0DEA89"}]}]}]},"legacy_mitre":{"record":{"CveYear":"2021","CveId":"47461","Ordinal":"1","Title":"userfaultfd: fix a race between writeprotect and exit_mmap()","CVE":"CVE-2021-47461","Year":"2021"},"notes":[{"CveYear":"2021","CveId":"47461","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nuserfaultfd: fix a race between writeprotect and exit_mmap()\n\nA race is possible when a process exits, its VMAs are removed by\nexit_mmap() and at the same time userfaultfd_writeprotect() is called.\n\nThe race was detected by KASAN on a development kernel, but it appears\nto be possible on vanilla kernels as well.\n\nUse mmget_not_zero() to prevent the race as done in other userfaultfd\noperations.","Type":"Description","Title":"userfaultfd: fix a race between writeprotect and exit_mmap()"}]}}}