In the Linux kernel, the following vulnerability has been resolved:
rtw89: cfo: check mac_id to avoid out-of-bounds
Somehow, hardware reports incorrect mac_id and pollute memory. Check index before we access the array.
UBSAN: array-index-out-of-bounds in rtw89/phy.c:2517:23 index 188 is out of range for type 's32 [64]' CPU: 1 PID: 51550 Comm: irq/35-rtw89pc Tainted: G OE Call Trace: <IRQ> showstack+0x52/0x58 dumpstacklvl+0x4c/0x63 dumpstack+0x10/0x12 ubsanepilogue+0x9/0x45 _ubsanhandleoutofbounds.cold+0x44/0x49 ? _allocskb+0x92/0x1d0 rtw89phycfoparse+0x44/0x7f [rtw89core] rtw89corerx+0x261/0x871 [rtw89core] ? _allocskb+0xee/0x1d0 rtw89pcinapipoll+0x3fa/0x4ea [rtw89pci] _napipoll+0x33/0x1a0 netrxaction+0x126/0x260 ? _queuework+0x217/0x4c0 _dosoftirq+0xd9/0x315 ? disableirqnosync+0x10/0x10 dosoftirq.part.0+0x6d/0x90 </IRQ> <TASK> _localbhenableip+0x62/0x70 rtw89pciinterruptthreadfn+0x182/0x1a6 [rtw89pci] irqthreadfn+0x28/0x60 irqthread+0xc8/0x190 ? irqthreadfn+0x60/0x60 kthread+0x16b/0x190 ? irqthreadcheckaffinity+0xe0/0xe0 ? setkthreadstruct+0x50/0x50 retfrom_fork+0x22/0x30 </TASK>
[
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c32fafe68298bb599e825c298e1d0ba30186f0a5",
"digest": {
"function_hash": "280384014348601254185659354661311001743",
"length": 224.0
},
"target": {
"function": "rtw89_phy_cfo_parse",
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-2fff4c62",
"signature_version": "v1",
"signature_type": "Function"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@03ed236480aeec8c2fd327a1ea6d711364c495e3",
"digest": {
"function_hash": "280384014348601254185659354661311001743",
"length": 224.0
},
"target": {
"function": "rtw89_phy_cfo_parse",
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-793e9ae6",
"signature_version": "v1",
"signature_type": "Function"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c32fafe68298bb599e825c298e1d0ba30186f0a5",
"digest": {
"threshold": 0.9,
"line_hashes": [
"89657615204429283944573848667717228009",
"50823098637687537667289125303017484433",
"73457342483994532658535898204902059844"
]
},
"target": {
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-91aab6ad",
"signature_version": "v1",
"signature_type": "Line"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@03ed236480aeec8c2fd327a1ea6d711364c495e3",
"digest": {
"threshold": 0.9,
"line_hashes": [
"89657615204429283944573848667717228009",
"50823098637687537667289125303017484433",
"73457342483994532658535898204902059844"
]
},
"target": {
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-af2c32a0",
"signature_version": "v1",
"signature_type": "Line"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@97df85871a5b187609d30fca6d85b912d9e02f29",
"digest": {
"threshold": 0.9,
"line_hashes": [
"89657615204429283944573848667717228009",
"50823098637687537667289125303017484433",
"73457342483994532658535898204902059844"
]
},
"target": {
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-f4a81d17",
"signature_version": "v1",
"signature_type": "Line"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@97df85871a5b187609d30fca6d85b912d9e02f29",
"digest": {
"function_hash": "280384014348601254185659354661311001743",
"length": 224.0
},
"target": {
"function": "rtw89_phy_cfo_parse",
"file": "drivers/net/wireless/realtek/rtw89/phy.c"
},
"id": "CVE-2022-49471-f8dccd46",
"signature_version": "v1",
"signature_type": "Function"
}
]