CVE-2021-47439

In the Linux kernel, the following vulnerability has been resolved: net: dsa: microchip: Added the condition for scheduling ksz_mib_read_work When the ksz module is installed and removed using rmmod, kernel crashes with null pointer dereferrence error. During rmmod, ksz_switch_remove function tries to cancel the mib_read_workqueue using cancel_delayed_work_sync routine and unregister switch from dsa. During dsa_unregister_switch it calls ksz_mac_link_down, which in turn reschedules the workqueue since mib_interval is non-zero. Due to which queue executed after mib_interval and it tries to access dp->slave. But the slave is unregistered in the ksz_switch_remove function. Hence kernel crashes. To avoid this crash, before canceling the workqueue, resetted the mib_interval to 0. v1 -> v2: -Removed the if condition in ksz_mib_read_work
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc5:*:*:*:*:*:*

History

02 Apr 2025, 15:14

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/383239a33cf29ebee9ce0d4e0e5c900b77a16148 - () https://git.kernel.org/stable/c/383239a33cf29ebee9ce0d4e0e5c900b77a16148 - Patch
References () https://git.kernel.org/stable/c/ef1100ef20f29aec4e62abeccdb5bdbebba1e378 - () https://git.kernel.org/stable/c/ef1100ef20f29aec4e62abeccdb5bdbebba1e378 - Patch
References () https://git.kernel.org/stable/c/f2e1de075018cf71bcd7d628e9f759cb8540b0c3 - () https://git.kernel.org/stable/c/f2e1de075018cf71bcd7d628e9f759cb8540b0c3 - Patch
CWE CWE-476
First Time Linux linux Kernel
Linux
CPE cpe:2.3:o:linux:linux_kernel:5.15:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.15:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

21 Nov 2024, 06:36

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/383239a33cf29ebee9ce0d4e0e5c900b77a16148 - () https://git.kernel.org/stable/c/383239a33cf29ebee9ce0d4e0e5c900b77a16148 -
References () https://git.kernel.org/stable/c/ef1100ef20f29aec4e62abeccdb5bdbebba1e378 - () https://git.kernel.org/stable/c/ef1100ef20f29aec4e62abeccdb5bdbebba1e378 -
References () https://git.kernel.org/stable/c/f2e1de075018cf71bcd7d628e9f759cb8540b0c3 - () https://git.kernel.org/stable/c/f2e1de075018cf71bcd7d628e9f759cb8540b0c3 -

31 Oct 2024, 18:35

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, se resolvió la siguiente vulnerabilidad: net: dsa: microchip: se agregó la condición para programar ksz_mib_read_work Cuando el módulo ksz se instala y elimina usando rmmod, el kernel falla con un error de desreferencia de puntero nulo. Durante rmmod, la función ksz_switch_remove intenta cancelar mib_read_workqueue usando la rutina cancel_delayed_work_sync y cancelar el registro del conmutador de dsa. Durante dsa_unregister_switch llama a ksz_mac_link_down, que a su vez reprograma la cola de trabajo ya que mib_interval no es cero. Debido a qué cola se ejecutó después de mib_interval e intenta acceder a dp->slave. Pero el esclavo no está registrado en la función ksz_switch_remove. Por lo tanto, el kernel falla. Para evitar este bloqueo, antes de cancelar la cola de trabajo, restableció mib_interval a 0. v1 -> v2: -Se eliminó la condición if en ksz_mib_read_work
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5

22 May 2024, 07:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-05-22 07:15

Updated : 2025-04-02 15:14


NVD link : CVE-2021-47439

Mitre link : CVE-2021-47439

CVE.ORG link : CVE-2021-47439


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-476

NULL Pointer Dereference