{"id":"CVE-2023-53224","state":"PUBLISHED","title":"ext4: Fix function prototype mismatch for ext4_feat_ktype","description":"In the Linux kernel, the following vulnerability has been resolved:\n\next4: Fix function prototype mismatch for ext4_feat_ktype\n\nWith clang's kernel control flow integrity (kCFI, CONFIG_CFI_CLANG),\nindirect call targets are validated against the expected function\npointer prototype to make sure the call target is valid to help mitigate\nROP attacks. If they are not identical, there is a failure at run time,\nwhich manifests as either a kernel panic or thread getting killed.\n\next4_feat_ktype was setting the \"release\" handler to \"kfree\", which\ndoesn't have a matching function prototype. Add a simple wrapper\nwith the correct prototype.\n\nThis was found as a result of Clang's new -Wcast-function-type-strict\nflag, which is more sensitive than the simpler -Wcast-function-type,\nwhich only checks for type width mismatches.\n\nNote that this code is only reached when ext4 is a loadable module and\nit is being unloaded:\n\n CFI failure at kobject_put+0xbb/0x1b0 (target: kfree+0x0/0x180; expected type: 0x7c4aa698)\n ...\n RIP: 0010:kobject_put+0xbb/0x1b0\n ...\n Call Trace:\n  <TASK>\n  ext4_exit_sysfs+0x14/0x60 [ext4]\n  cleanup_module+0x67/0xedb [ext4]","publishedAt":"2025-09-15T14:21:53.061Z","updatedAt":"2026-05-11T19:40:39.797Z","severity":{"score":5.5,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","source":"CISA-ADP"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"2b69cdd9f9a7f596e3dd31f05f9852940d177924","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"99e3fd21f8fc975c95e8cf76fbf6a3d2656f8f71","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"1ba10d3640e9783dad811fe4e24d55465c37c64d","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"c98077f7598a562f51051eec043be0cb3e1b1b5e","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"0a1394e07c5d6bf1bfc25db8589ff1b1bfb6f46a","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"94d8de83286fb1827340eba35b61c308f6b46ead","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"118901ad1f25d2334255b3d50512fa20591531cd","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/ext4/sysfs.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.16","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.16","versionType":"semver"},{"version":"4.19.274","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.233","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.170","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.96","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.14","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.1","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/ext4/sysfs.c"]}],"references":["https://git.kernel.org/stable/c/2b69cdd9f9a7f596e3dd31f05f9852940d177924","https://git.kernel.org/stable/c/99e3fd21f8fc975c95e8cf76fbf6a3d2656f8f71","https://git.kernel.org/stable/c/1ba10d3640e9783dad811fe4e24d55465c37c64d","https://git.kernel.org/stable/c/c98077f7598a562f51051eec043be0cb3e1b1b5e","https://git.kernel.org/stable/c/0a1394e07c5d6bf1bfc25db8589ff1b1bfb6f46a","https://git.kernel.org/stable/c/94d8de83286fb1827340eba35b61c308f6b46ead","https://git.kernel.org/stable/c/118901ad1f25d2334255b3d50512fa20591531cd"],"weaknesses":["CWE-401"],"ingestedAt":"2026-10-29T20:06:33.064Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2023/53xxx/CVE-2023-53224.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-53224","state":"PUBLISHED","datePublished":"2025-09-15T14:21:53.061Z","dateUpdated":"2026-05-11T19:40:39.797Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-09-15T14:19:21.846Z"},"containers":{"cna":{"title":"ext4: Fix function prototype mismatch for ext4_feat_ktype","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\next4: Fix function prototype mismatch for ext4_feat_ktype\n\nWith clang's kernel control flow integrity (kCFI, CONFIG_CFI_CLANG),\nindirect call targets are validated against the expected function\npointer prototype to make sure the call target is valid to help mitigate\nROP attacks. If they are not identical, there is a failure at run time,\nwhich manifests as either a kernel panic or thread getting killed.\n\next4_feat_ktype was setting the \"release\" handler to \"kfree\", which\ndoesn't have a matching function prototype. Add a simple wrapper\nwith the correct prototype.\n\nThis was found as a result of Clang's new -Wcast-function-type-strict\nflag, which is more sensitive than the simpler -Wcast-function-type,\nwhich only checks for type width mismatches.\n\nNote that this code is only reached when ext4 is a loadable module and\nit is being unloaded:\n\n CFI failure at kobject_put+0xbb/0x1b0 (target: kfree+0x0/0x180; expected type: 0x7c4aa698)\n ...\n RIP: 0010:kobject_put+0xbb/0x1b0\n ...\n Call Trace:\n  <TASK>\n  ext4_exit_sysfs+0x14/0x60 [ext4]\n  cleanup_module+0x67/0xedb [ext4]"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"2b69cdd9f9a7f596e3dd31f05f9852940d177924","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"99e3fd21f8fc975c95e8cf76fbf6a3d2656f8f71","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"1ba10d3640e9783dad811fe4e24d55465c37c64d","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"c98077f7598a562f51051eec043be0cb3e1b1b5e","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"0a1394e07c5d6bf1bfc25db8589ff1b1bfb6f46a","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"94d8de83286fb1827340eba35b61c308f6b46ead","versionType":"git"},{"version":"b99fee58a20ab8e0557cce87b6f187e325993142","status":"affected","lessThan":"118901ad1f25d2334255b3d50512fa20591531cd","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/ext4/sysfs.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.16","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.16","versionType":"semver"},{"version":"4.19.274","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.233","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.170","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.96","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.14","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.1","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/ext4/sysfs.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/2b69cdd9f9a7f596e3dd31f05f9852940d177924"},{"url":"https://git.kernel.org/stable/c/99e3fd21f8fc975c95e8cf76fbf6a3d2656f8f71"},{"url":"https://git.kernel.org/stable/c/1ba10d3640e9783dad811fe4e24d55465c37c64d"},{"url":"https://git.kernel.org/stable/c/c98077f7598a562f51051eec043be0cb3e1b1b5e"},{"url":"https://git.kernel.org/stable/c/0a1394e07c5d6bf1bfc25db8589ff1b1bfb6f46a"},{"url":"https://git.kernel.org/stable/c/94d8de83286fb1827340eba35b61c308f6b46ead"},{"url":"https://git.kernel.org/stable/c/118901ad1f25d2334255b3d50512fa20591531cd"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T19:40:39.797Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"4.19.274"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"5.4.233"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"5.10.170"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"5.15.96"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"6.1.14"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"6.2.1"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.16","versionEndExcluding":"6.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":5.5,"attackVector":"LOCAL","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","integrityImpact":"NONE","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"NONE"}},{"other":{"type":"ssvc","content":{"id":"CVE-2023-53224","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-01-14T17:50:53.145160Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-401","lang":"en","type":"CWE","description":"CWE-401 Missing Release of Memory after Effective Lifetime"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-01-14T17:52:59.556Z"}}]}}}