CVE-2023-53224
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
15/09/2025
Last modified:
15/09/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
ext4: Fix function prototype mismatch for ext4_feat_ktype<br />
<br />
With clang&#39;s kernel control flow integrity (kCFI, CONFIG_CFI_CLANG),<br />
indirect call targets are validated against the expected function<br />
pointer prototype to make sure the call target is valid to help mitigate<br />
ROP attacks. If they are not identical, there is a failure at run time,<br />
which manifests as either a kernel panic or thread getting killed.<br />
<br />
ext4_feat_ktype was setting the "release" handler to "kfree", which<br />
doesn&#39;t have a matching function prototype. Add a simple wrapper<br />
with the correct prototype.<br />
<br />
This was found as a result of Clang&#39;s new -Wcast-function-type-strict<br />
flag, which is more sensitive than the simpler -Wcast-function-type,<br />
which only checks for type width mismatches.<br />
<br />
Note that this code is only reached when ext4 is a loadable module and<br />
it is being unloaded:<br />
<br />
CFI failure at kobject_put+0xbb/0x1b0 (target: kfree+0x0/0x180; expected type: 0x7c4aa698)<br />
...<br />
RIP: 0010:kobject_put+0xbb/0x1b0<br />
...<br />
Call Trace:<br />
<br />
ext4_exit_sysfs+0x14/0x60 [ext4]<br />
cleanup_module+0x67/0xedb [ext4]
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/0a1394e07c5d6bf1bfc25db8589ff1b1bfb6f46a
- https://git.kernel.org/stable/c/118901ad1f25d2334255b3d50512fa20591531cd
- https://git.kernel.org/stable/c/1ba10d3640e9783dad811fe4e24d55465c37c64d
- https://git.kernel.org/stable/c/2b69cdd9f9a7f596e3dd31f05f9852940d177924
- https://git.kernel.org/stable/c/94d8de83286fb1827340eba35b61c308f6b46ead
- https://git.kernel.org/stable/c/99e3fd21f8fc975c95e8cf76fbf6a3d2656f8f71
- https://git.kernel.org/stable/c/c98077f7598a562f51051eec043be0cb3e1b1b5e



