In the Linux kernel, the following vulnerability has been resolved:
net: usb: lan78xx: Fix double free issue with interrupt buffer allocation
In lan78xx_probe(), the buffer buf was being freed twice: once
implicitly through usb_free_urb(dev->urb_intr) with the
URB_FREE_BUFFER flag and again explicitly by kfree(buf). This caused
a double free issue.
To resolve this, reordered kmalloc() and usb_alloc_urb() calls to
simplify the initialization sequence and removed the redundant
kfree(buf). Now, buf is allocated after usb_alloc_urb(), ensuring
it is correctly managed by usb_fill_int_urb() and freed by
usb_free_urb() as intended.
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/blob/cc431b3424123d84bcd7afd4de150b33f117a8ef/cves/2024/53xxx/CVE-2024-53213.json"
}