Bug 1775050 (CVE-2019-19057) - CVE-2019-19057 kernel: Two memory leaks in the mwifiex_pcie_init_evt_ring() function in drivers/net/wireless/marvell/mwifiex/pcie.c allows for a DoS
Summary: CVE-2019-19057 kernel: Two memory leaks in the mwifiex_pcie_init_evt_ring() f...
Keywords:
Status: NEW
Alias: CVE-2019-19057
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1776602 1781531 1781534 1775051 1776600 1776601
Blocks: 1775052
TreeView+ depends on / blocked
 
Reported: 2019-11-21 11:40 UTC by Marian Rehak
Modified: 2019-12-16 04:08 UTC (History)
49 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Two memory leak flaws were found in the Linux kernel's mwifiex_pcie_init_evt_ring() function. A local attacker, able to reload the kernel module or hotplug Marvell WiFi hardware using this driver, can cause a denial of service (memory consumption) by triggering mwifiex_map_pci_memory() failures.
Clone Of:
Environment:
Last Closed:


Attachments (Terms of Use)

Description Marian Rehak 2019-11-21 11:40:59 UTC
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

Comment 1 Marian Rehak 2019-11-21 11:41:21 UTC
Created kernel tracking bugs for this issue:

Affects: fedora-all [bug 1775051]

Comment 2 Wade Mealing 2019-11-26 04:15:47 UTC
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.

Comment 15 Wade Mealing 2019-12-16 03:54:44 UTC
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.


Note You need to log in before you can comment on or make changes to this bug.