Bug 1831699 (CVE-2020-12465)

Summary: CVE-2020-12465 kernel: buffer overflow in mt76_add_fragment function in drivers/net/wireless/mediatek/mt76/dma.c
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Nobody <nobody>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: acaringi, airlied, bhu, blc, bmasney, dvlasenk, hdegoede, hkrzesin, itamar, jarodwilson, jeremy, jforbes, jlelli, john.j5live, jonathan, josef, jross, jshortt, jstancek, jwboyer, kcarcia, kernel-maint, kernel-mgr, lgoncalv, linville, masami256, mchehab, mjg59, mlangsdo, nmurray, ptalbert, qzhao, rkeshri, rt-maint, rvrbovsk, steved, williams
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
A memory overflow and data corruption flaw were found in the Mediatek MT76 driver module for WiFi in mt76_add_fragment in drivers/net/wireless/mediatek/mt76/dma.c. An oversized packet with too many rx fragments causes an overflow and corruption in memory of adjacent pages. A local attacker with a special user or root privileges can cause a denial of service or a leak of internal kernel information.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1807052, 1831703, 1836205    
Bug Blocks: 1831702    

Description Guilherme de Almeida Suckevicz 2020-05-05 14:01:26 UTC
There was a memory overflow and data corruption flaw seen in the Mediatek MT76 driver module for wifi in mt76_add_fragment in drivers/net/wireless/mediatek/mt76/dma.c.  In this problem an oversized packet with too many rx fragments causes an overflow and a corruption in memory of adjacent pages. A local attacker with special user (or root) privilege can cause a DoS or a leak of internal kernel information.

Reference:
https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.10

Upstream commit:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b102f0c522cf668c8382c56a4f771b37d011cda2

Comment 1 Guilherme de Almeida Suckevicz 2020-05-05 14:06:34 UTC
Created kernel tracking bugs for this issue:

Affects: fedora-all [bug 1831703]

Comment 2 Justin M. Forbes 2020-05-05 14:35:55 UTC
This was fixed for Fedora with the 5.5.10 stable kernel updates.

Comment 8 RaTasha Tillery-Smith 2020-05-19 12:43:51 UTC
Mitigation:

Mitigation for this issue is to skip loading the affected module mt76 onto the system until we have a fix available. This can be done by a blacklist mechanism and ensures the driver is not loaded at the boot time.
~~~
How do I blacklist a kernel module to prevent it from loading automatically?
https://access.redhat.com/solutions/41278 
~~~

Comment 9 errata-xmlrpc 2020-11-04 00:50:59 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2020:4431 https://access.redhat.com/errata/RHSA-2020:4431