Two memory leaks in the mwifiex_pcie_init_evt_ring() function in drivers/net/wireless/marvell/mwifiex/pcie.c in the Linux kernel through 5.3.11 allow attackers to cause a denial of service (memory consumption) by triggering mwifiex_map_pci_memory() failures. Upstream Issue: https://github.com/torvalds/linux/commit/d10dcb615c8e29d403a24d35f8310a7a53e3050c
Created kernel tracking bugs for this issue: Affects: fedora-all [bug 1775051]
My initial findings show that this is only on bringing up the device, not on a regular interval. It is definitely wasted memory if device bringup fails and triggers the flaw, but I don't imagine this is a big impact flaw.
The affected function mwifiex_pcie_init_evt_ring Which is called in two possible ways. mwifiex_init_pcie() -> mwifiex_pcie_alloc_buffers() -> mwifiex_pcie_create_evtbd_ring() -> mwifiex_pcie_init_evt_ring() mwifiex_pcie_up_dev() -> mwifiex_pcie_alloc_buffers() -> mwifiex_pcie_create_evtbd_ring() -> mwifiex_pcie_init_evt_ring() Both of these functions are used during PCIE device initialization time, with no network traffic existing on the card at this time. Other reports may show this as a network based attack however as this issue is during the hardware initialization the network attack vector is not correct.
This issue has been addressed in the following products: Red Hat Enterprise Linux 8 Via RHSA-2020:1567 https://access.redhat.com/errata/RHSA-2020:1567
This issue has been addressed in the following products: Red Hat Enterprise Linux 8 Via RHSA-2020:1769 https://access.redhat.com/errata/RHSA-2020:1769
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s): https://access.redhat.com/security/cve/cve-2019-19057