CVE-2023-52907
Severity CVSS v4.0:
Pending analysis
Type:
CWE-416
Use After Free
Publication date:
21/08/2024
Last modified:
12/09/2024
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
nfc: pn533: Wait for out_urb&#39;s completion in pn533_usb_send_frame()<br />
<br />
Fix a use-after-free that occurs in hcd when in_urb sent from<br />
pn533_usb_send_frame() is completed earlier than out_urb. Its callback<br />
frees the skb data in pn533_send_async_complete() that is used as a<br />
transfer buffer of out_urb. Wait before sending in_urb until the<br />
callback of out_urb is called. To modify the callback of out_urb alone,<br />
separate the complete function of out_urb and ack_urb.<br />
<br />
Found by a modified version of syzkaller.<br />
<br />
BUG: KASAN: use-after-free in dummy_timer<br />
Call Trace:<br />
memcpy (mm/kasan/shadow.c:65)<br />
dummy_perform_transfer (drivers/usb/gadget/udc/dummy_hcd.c:1352)<br />
transfer (drivers/usb/gadget/udc/dummy_hcd.c:1453)<br />
dummy_timer (drivers/usb/gadget/udc/dummy_hcd.c:1972)<br />
arch_static_branch (arch/x86/include/asm/jump_label.h:27)<br />
static_key_false (include/linux/jump_label.h:207)<br />
timer_expire_exit (include/trace/events/timer.h:127)<br />
call_timer_fn (kernel/time/timer.c:1475)<br />
expire_timers (kernel/time/timer.c:1519)<br />
__run_timers (kernel/time/timer.c:1790)<br />
run_timer_softirq (kernel/time/timer.c:1803)
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 3.1 (including) | 4.14.303 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.270 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.229 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.164 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.89 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.7 (excluding) |
| cpe:2.3:o:linux:linux_kernel:6.2:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.2:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:6.2:rc3:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/0ca78c99656f5c448567db1e148367aa3b01c80a
- https://git.kernel.org/stable/c/321db5131c92983dac4f3338e8fbb6df214238c0
- https://git.kernel.org/stable/c/35529d6b827eedb6bf7e81130e4b7e0aba9e58d2
- https://git.kernel.org/stable/c/39ae73e581112cfe27ba50aecb1c891ce57cecb1
- https://git.kernel.org/stable/c/8998db5021a28ad67aa8d627bdb4226e4046ccc4
- https://git.kernel.org/stable/c/9424d2205fe94a095fb9365ec0c6137f0b394a2b
- https://git.kernel.org/stable/c/9dab880d675b9d0dd56c6428e4e8352a3339371d



