{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2024-53147","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2024-11-19T17:17:24.998Z","datePublished":"2024-12-24T11:28:47.695Z","dateUpdated":"2026-08-05T11:44:09.092Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T11:44:09.092Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nexfat: fix out-of-bounds access of directory entries\n\nIn the case of the directory size is greater than or equal to\nthe cluster size, if start_clu becomes an EOF cluster(an invalid\ncluster) due to file system corruption, then the directory entry\nwhere ei->hint_femp.eidx hint is outside the directory, resulting\nin an out-of-bounds access, which may cause further file system\ncorruption.\n\nThis commit adds a check for start_clu, if it is an invalid cluster,\nthe file or directory will be treated as empty."}],"metrics":[{"cvssV3_1":{"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"},"scenarios":[{"lang":"en","value":"AV:L - Triggering requires a crafted exFAT image to be mounted and then a lookup/create performed in the corrupt directory, which is a local operation — an unprivileged desktop user can loop-mount an arbitrary image via udisks2, or operate on an automounted USB/SD card. There is no network-reachable path into fs/exfat.\nAC:L - The attacker fully controls the on-disk bytes: setting a directory's stream-extension dentry to size >= cluster_size with an invalid start_clu is deterministic, and the follow-up lookup+create is a plain syscall sequence with no race, timing, or memory-layout dependency.\nPR:L - Only ordinary local user privileges are needed — udisks2/automount lets an unprivileged session user get the crafted exFAT image mounted, and any low-privileged user can then run lookup/creat/mkdir in the corrupt directory to drive the out-of-bounds access. Real root in the init namespace is not required.\nUI:N - In the self-mount scenario the attacker performs every step themselves — mount the image via the automount/loop path, then issue the lookup and create — with no action by any other user required.\nS:U - The corruption and disclosure stay within the kernel's own security authority and the filesystem it manages; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - Because hint_femp.eidx and the inflated directory size index clusters outside the directory, readdir/lookup read clusters belonging to other files — or arbitrary sectors of the device with the unvalidated `cur_clu += clu_offset` path — and hand that content back to userspace as directory-entry names and attributes.\nI:H - Directory entries are written into clusters owned by other files, and exfat_chain_cont_cluster() rewrites FAT entries for clusters it does not own, splicing another file's clusters into the corrupt directory; this destroys unrelated user data and filesystem metadata, exactly the \"further file system corruption\" the commit cites.\nA:H - The bogus accesses funnel into exfat_fs_error(), which calls panic() under the supported errors=panic mount option and forces the filesystem read-only under the default, and the resulting inconsistent inode (i_size claiming N+1 clusters over a one-cluster chain) yields repeated I/O failures on every subsequent operation."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/exfat/namei.c"],"versions":[{"version":"1acf1a564b6034b5af1e7fb23cb98cb3bb4f6003","lessThan":"a0120d6463368378539ef928cf067d02372efb8c","status":"affected","versionType":"git"},{"version":"1acf1a564b6034b5af1e7fb23cb98cb3bb4f6003","lessThan":"3ddd1cb2b458ff6a193bc845f408dfff217db29e","status":"affected","versionType":"git"},{"version":"1acf1a564b6034b5af1e7fb23cb98cb3bb4f6003","lessThan":"184fa506e392eb78364d9283c961217ff2c0617b","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/exfat/namei.c"],"versions":[{"version":"5.7","status":"affected"},{"version":"0","lessThan":"5.7","status":"unaffected","versionType":"semver"},{"version":"6.11.11","lessThanOrEqual":"6.11.*","status":"unaffected","versionType":"semver"},{"version":"6.12.2","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.13","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.11.11"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.12.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.13"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/a0120d6463368378539ef928cf067d02372efb8c"},{"url":"https://git.kernel.org/stable/c/3ddd1cb2b458ff6a193bc845f408dfff217db29e"},{"url":"https://git.kernel.org/stable/c/184fa506e392eb78364d9283c961217ff2c0617b"}],"title":"exfat: fix out-of-bounds access of directory entries","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":7.1,"attackVector":"LOCAL","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H","integrityImpact":"HIGH","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"NONE"}},{"other":{"type":"ssvc","content":{"id":"CVE-2024-53147","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2025-10-01T20:09:50.211363Z"}}}],"problemTypes":[{"descriptions":[{"lang":"en","type":"CWE","cweId":"CWE-125","description":"CWE-125 Out-of-bounds Read"}]}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2025-10-01T20:17:09.224Z"}}]}}