CVE-2023-53075

Summary

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

ftrace: Fix invalid address access in lookup_rec() when index is 0

KASAN reported follow problem:

BUG: KASAN: use-after-free in lookup_rec Read of size 8 at addr ffff000199270ff0 by task modprobe CPU: 2 Comm: modprobe Call trace: kasan_report __asan_load8 lookup_rec ftrace_location arch_check_ftrace_location check_kprobe_address_safe register_kprobe

When checking pg->records[pg->index - 1].ip in lookup_rec(), it can get a pg which is newly added to ftrace_pages_start in ftrace_process_locs(). Before the first pg->index++, index is 0 and accessing pg->records[-1].ip will cause this problem.

Don't check the ip when pg->index is 0.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < 2de28e5ce34b22b73b833a21e2c45ae3aade3964affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < 7569ee04b0e3b32df79f64db3a7138573edad9bcaffected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < ac58b88ccbbb8e9fb83e137cee04a856b1ea6635affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < 83c3b2f4e7c61367c7b24551f4c6eb94bbdda283affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < 2a0d71fabfeb349216d33f001a6421b1768bd3a9affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < 4f84f31f63416b0f02fc146ffdc4ab32723eb7e8affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < f1bd8b7fd890d87d0dc4dedc6287ea34dd07c0b4affected
LinuxLinux9644302e3315e7e36495d230d5ac7125a316d33e < ee92fa443358f4fc0017c1d0d325c27b37802504affected
LinuxLinux3.5affected
LinuxLinux0 < 3.5unaffected
LinuxLinux4.14.311 <= 4.14.*unaffected
LinuxLinux4.19.279 <= 4.19.*unaffected
LinuxLinux5.4.238 <= 5.4.*unaffected
LinuxLinux5.10.176 <= 5.10.*unaffected
LinuxLinux5.15.104 <= 5.15.*unaffected
LinuxLinux6.1.21 <= 6.1.*unaffected
LinuxLinux6.2.8 <= 6.2.*unaffected
LinuxLinux6.3 <= *unaffected

Weaknesses

References