In the Linux kernel, the following vulnerability has been resolved:
wifi: ath12k: fix uaf in ath12kcoreinit()
When the execution of ath12kcorehwgroupassign() or ath12kcorehwgroupcreate() fails, the registered notifier chain is not unregistered properly. Its memory is freed after rmmod, which may trigger to a use-after-free (UAF) issue if there is a subsequent access to this notifier chain.
Fixes the issue by calling ath12kcorepanicnotifierunregister() in failure cases.
Call trace: notifierchainregister+0x4c/0x1f0 (P) atomicnotifierchainregister+0x38/0x68 ath12kcoreinit+0x50/0x4e8 [ath12k] ath12kpciprobe+0x5f8/0xc28 [ath12k] pcideviceprobe+0xbc/0x1a8 reallyprobe+0xc8/0x3a0 _driverprobedevice+0x84/0x1b0 driverprobedevice+0x44/0x130 _driverattach+0xcc/0x208 busforeachdev+0x84/0x100 driverattach+0x2c/0x40 busadddriver+0x130/0x260 driverregister+0x70/0x138 _pciregisterdriver+0x68/0x80 ath12kpciinit+0x30/0x68 [ath12k] ath12kinit+0x28/0x78 [ath12k]
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPLV1.0V2.0_SILICONZ-3