Linux Kernel up to 5.0.9 Coredump fs/userfaultfd.c mmget_not_zero/get_task_mm race condition

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
5.9$0-$5k0.00

A vulnerability classified as critical was found in Linux Kernel up to 5.0.9 (Operating System). Affected by this vulnerability is the function mmget_not_zero/get_task_mm of the file fs/userfaultfd.c of the component Coredump. The manipulation with an unknown input leads to a race condition vulnerability. The CWE definition for the vulnerability is CWE-362. The product contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently. As an impact it is known to affect confidentiality, integrity, and availability. The summary by CVE is:

The coredump implementation in the Linux kernel before 5.0.10 does not use locking or other mechanisms to prevent vma layout or vma flags changes while it runs, which allows local users to obtain sensitive information, cause a denial of service, or possibly have unspecified other impact by triggering a race condition with mmget_not_zero or get_task_mm calls. This is related to fs/userfaultfd.c, mm/mmap.c, fs/proc/task_mmu.c, and drivers/infiniband/core/uverbs_main.c.

The bug was discovered 02/25/2019. The weakness was shared 04/29/2019 by Jann Horn with Google Project Zero (oss-sec). The advisory is shared at openwall.com. This vulnerability is known as CVE-2019-11599 since 04/29/2019. An attack has to be approached locally. The requirement for exploitation is a single authentication. Technical details and also a public exploit are known.

A public exploit has been developed in ANSI C and been published 1 days after the advisory. It is possible to download the exploit at exploit-db.com. It is declared as proof-of-concept. The vulnerability was handled as a non-public zero-day exploit for at least 63 days. During that time the estimated underground price was around $0-$5k. The commercial vulnerability scanner Qualys is able to test this issue with plugin 176950 (Debian Security Update for linux (DLA 1799-2)).

Upgrading to version 5.0.10 eliminates this vulnerability.

The vulnerability is also documented in the vulnerability database at Exploit-DB (46781). The entries 122735, 133967, 133998 and 134237 are related to this item.

Productinfo

Type

Vendor

Name

Version

License

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB CVSS-B Score: 🔍
VulDB CVSS-BT Score: 🔍
VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 6.1
VulDB Meta Temp Score: 5.9

VulDB Base Score: 5.3
VulDB Temp Score: 4.8
VulDB Vector: 🔍
VulDB Reliability: 🔍

NVD Base Score: 7.0
NVD Vector: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍

NVD Base Score: 🔍

Exploitinginfo

Class: Race condition
CWE: CWE-362
CAPEC: 🔍
ATT&CK: 🔍

Local: Yes
Remote: No

Availability: 🔍
Access: Public
Status: Proof-of-Concept
Programming Language: 🔍
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Price Prediction: 🔍
Current Price Estimation: 🔍

0-Dayunlockunlockunlockunlock
Todayunlockunlockunlockunlock

Qualys ID: 🔍
Qualys Name: 🔍

Exploit-DB: 🔍

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

0-Day Time: 🔍
Exploit Delay Time: 🔍

Upgrade: Kernel 5.0.10
Patch: git.kernel.org

Timelineinfo

02/25/2019 🔍
04/29/2019 +63 days 🔍
04/29/2019 +0 days 🔍
04/30/2019 +1 days 🔍
04/30/2019 +0 days 🔍
04/30/2019 +0 days 🔍
05/01/2019 +1 days 🔍
09/11/2023 +1594 days 🔍

Sourcesinfo

Vendor: kernel.org

Advisory: RHSA-2019:2029
Researcher: Jann Horn
Organization: Google Project Zero
Status: Confirmed
Confirmation: 🔍

CVE: CVE-2019-11599 (🔍)
SecurityFocus: 108113 - Linux Kernel CVE-2019-11599 Local Race Condition Vulnerability

scip Labs: https://www.scip.ch/en/?labs.20161013
See also: 🔍

Entryinfo

Created: 04/30/2019 08:38
Updated: 09/11/2023 08:08
Changes: 04/30/2019 08:38 (75), 06/07/2020 07:35 (6), 09/11/2023 08:08 (5)
Complete: 🔍

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you know our Splunk app?

Download it now for free!