CVE-2022-48871

Source
https://cve.org/CVERecord?id=CVE-2022-48871
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-48871.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-48871
Downstream
Related
Published
2024-08-21T06:10:01.859Z
Modified
2026-03-20T12:21:57.881947Z
Summary
tty: serial: qcom-geni-serial: fix slab-out-of-bounds on RX FIFO buffer
Details

In the Linux kernel, the following vulnerability has been resolved:

tty: serial: qcom-geni-serial: fix slab-out-of-bounds on RX FIFO buffer

Driver's probe allocates memory for RX FIFO (port->rxfifo) based on default RX FIFO depth, e.g. 16. Later during serial startup the qcomgeniserialportsetup() updates the RX FIFO depth (port->rxfifo_depth) to match real device capabilities, e.g. to 32.

The RX UART handle code will read "port->rxfifodepth" number of words into "port->rx_fifo" buffer, thus exceeding the bounds. This can be observed in certain configurations with Qualcomm Bluetooth HCI UART device and KASAN:

Bluetooth: hci0: QCA Product ID :0x00000010 Bluetooth: hci0: QCA SOC Version :0x400a0200 Bluetooth: hci0: QCA ROM Version :0x00000200 Bluetooth: hci0: QCA Patch Version:0x00000d2b Bluetooth: hci0: QCA controller version 0x02000200 Bluetooth: hci0: QCA Downloading qca/htbtfw20.tlv bluetooth hci0: Direct firmware load for qca/htbtfw20.tlv failed with error -2 Bluetooth: hci0: QCA Failed to request file: qca/htbtfw20.tlv (-2) Bluetooth: hci0: QCA Failed to download patch (-2) ================================================================== BUG: KASAN: slab-out-of-bounds in handlerxuart+0xa8/0x18c Write of size 4 at addr ffff279347d578c0 by task swapper/0/0

CPU: 0 PID: 0 Comm: swapper/0 Not tainted 6.1.0-rt5-00350-gb2450b7e00be-dirty #26 Hardware name: Qualcomm Technologies, Inc. Robotics RB5 (DT) Call trace: dumpbacktrace.part.0+0xe0/0xf0 showstack+0x18/0x40 dumpstacklvl+0x8c/0xb8 printreport+0x188/0x488 kasanreport+0xb4/0x100 __asanstore4+0x80/0xa4 handlerxuart+0xa8/0x18c qcomgeniserialhandlerx+0x84/0x9c qcomgeniserialisr+0x24c/0x760 __handleirqeventpercpu+0x108/0x500 handleirqevent+0x6c/0x110 handlefasteoiirq+0x138/0x2cc generichandledomainirq+0x48/0x64

If the RX FIFO depth changes after probe, be sure to resize the buffer.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/48xxx/CVE-2022-48871.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
f9d690b6ece7ec9a6ff6b588df95a010ab2d66f9
Fixed
894681682dbefdad917b88f86cde1069140a047a
Fixed
cb53a3366eb28fed67850c80afa52075bb71a38a
Fixed
fd524ca7fe45b8a06dca2dd546d62684a9768f95
Fixed
b8caf69a6946e18ffebad49847e258f5b6d52ac2

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-48871.json"