CVE-2023-52797: drivers: perf: Check find_first_bit() return value

Published May 21, 2024
·
Updated

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

drivers: perf: Check findfirstbit() return value

We must check the return value of findfirstbit() before using the return value as an index array since it happens to overflow the array and then panic:

[ 107.318430] Kernel BUG [#1] [ 107.319434] CPU: 3 PID: 1238 Comm: kill Tainted: G E 6.6.0-rc6ubuntu-defconfig #2 [ 107.319465] Hardware name: riscv-virtio,qemu (DT) [ 107.319551] epc : pmusbiovfhandler+0x3a4/0x3ae [ 107.319840] ra : pmusbiovfhandler+0x52/0x3ae [ 107.319868] epc : ffffffff80a0a77c ra : ffffffff80a0a42a sp : ffffaf83fecda350 [ 107.319884] gp : ffffffff823961a8 tp : ffffaf8083db1dc0 t0 : ffffaf83fecda480 [ 107.319899] t1 : ffffffff80cafe62 t2 : 000000000000ff00 s0 : ffffaf83fecda520 [ 107.319921] s1 : ffffaf83fecda380 a0 : 00000018fca29df0 a1 : ffffffffffffffff [ 107.319936] a2 : 0000000001073734 a3 : 0000000000000004 a4 : 0000000000000000 [ 107.319951] a5 : 0000000000000040 a6 : 000000001d1c8774 a7 : 0000000000504d55 [ 107.319965] s2 : ffffffff82451f10 s3 : ffffffff82724e70 s4 : 000000000000003f [ 107.319980] s5 : 0000000000000011 s6 : ffffaf8083db27c0 s7 : 0000000000000000 [ 107.319995] s8 : 0000000000000001 s9 : 00007fffb45d6558 s10: 00007fffb45d81a0 [ 107.320009] s11: ffffaf7ffff60000 t3 : 0000000000000004 t4 : 0000000000000000 [ 107.320023] t5 : ffffaf7f80000000 t6 : ffffaf8000000000 [ 107.320037] status: 0000000200000100 badaddr: 0000000000000000 cause: 0000000000000003 [ 107.320081] [<ffffffff80a0a77c>] pmusbiovfhandler+0x3a4/0x3ae [ 107.320112] [<ffffffff800b42d0>] handlepercpudevidirq+0x9e/0x1a0 [ 107.320131] [<ffffffff800ad92c>] generichandledomainirq+0x28/0x36 [ 107.320148] [<ffffffff8065f9f8>] riscvintcirq+0x36/0x4e [ 107.320166] [<ffffffff80caf4a0>] handleriscvirq+0x54/0x86 [ 107.320189] [<ffffffff80cb0036>] doirq+0x64/0x96 [ 107.320271] Code: 85a6 855e b097 ff7f 80e7 9220 b709 9002 4501 bbd9 (9002) 6097 [ 107.320585] ---[ end trace 0000000000000000 ]--- [ 107.320704] Kernel panic - not syncing: Fatal exception in interrupt [ 107.320775] SMP: stopping secondary CPUs [ 107.321219] Kernel Offset: 0x0 from 0xffffffff80000000 [ 107.333051] ---[ end Kernel panic - not syncing: Fatal exception in interrupt ]---

Affected Software

3 affected components
Linux Linux kernel
Linux Linux kernel>=5.18<6.5.13
Linux Linux kernel>=6.6<6.6.3

Event History

May 21, 2024
CVE Published
via MITRE·03:31 PM
Data Sourced
via MITRE·03:31 PM
Description
Data Sourced
via NVD·04:15 PM
RemedyDescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2023-52797?

CVE-2023-52797 has been categorized with a severity level that indicates potential for a critical impact on system stability.

2

How do I fix CVE-2023-52797?

To fix CVE-2023-52797, update your Linux kernel to the latest stable version that includes the patch for this vulnerability.

3

What type of attack is possible with CVE-2023-52797?

CVE-2023-52797 could potentially allow a local attacker to induce a kernel panic by exploiting the unchecked return value from find_first_bit().

4

Which versions of the Linux Kernel are affected by CVE-2023-52797?

CVE-2023-52797 affects certain versions of the Linux kernel prior to the inclusion of the relevant patch.

5

Is CVE-2023-52797 a local or remote vulnerability?

CVE-2023-52797 is considered a local vulnerability, as it requires access to the system to exploit.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203