Описание
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.
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.
Ссылки
- https://nvd.nist.gov/vuln/detail/CVE-2024-53213
- https://git.kernel.org/stable/c/03819abbeb11117dcbba40bfe322b88c0c88a6b6
- https://git.kernel.org/stable/c/7ac9f3c981eeceee2ec4d30d850f4a6f50a1ec40
- https://git.kernel.org/stable/c/977128343fc2a30737399b58df8ea77e94f164bd
- https://git.kernel.org/stable/c/a422ebec863d99d5607fb41bb7af3347fcb436d3
- https://git.kernel.org/stable/c/b09512aea6223eec756f52aa584fc29eeab57480
Связанные уязвимости
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.
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.
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.
In the Linux kernel, the following vulnerability has been resolved: n ...