Linux Kernel up to 2.6.38 THP pmd_mkdirty 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.1$0-$5k0.00

Summaryinfo

A vulnerability categorized as critical has been discovered in Linux Kernel up to 2.6.38. Impacted is the function pmd_mkdirty of the component THP. Executing a manipulation can lead to race condition. The identification of this vulnerability is CVE-2017-1000405. The attack can only be executed locally. Furthermore, there is an exploit available. It is advisable to upgrade the affected component.

Detailsinfo

A vulnerability was found in Linux Kernel up to 2.6.38 (Operating System). It has been declared as problematic. This vulnerability affects the function pmd_mkdirty of the component THP. 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 integrity, and availability. CVE summarizes:

The Linux Kernel versions 2.6.38 through 4.14 have a problematic use of pmd_mkdirty() in the touch_pmd() function inside the THP implementation. touch_pmd() can be reached by get_user_pages(). In such case, the pmd will become dirty. This scenario breaks the new can_follow_write_pmd()'s logic - pmd can become dirty without going through a COW cycle. This bug is not as severe as the original "Dirty cow" because an ext4 file (or any other regular file) cannot be mapped using THP. Nevertheless, it does allow us to overwrite read-only huge pages. For example, the zero huge page and sealed shmem files can be overwritten (since their mapping can be populated using THP). Note that after the first write page-fault to the zero page, it will be replaced with a new fresh (and zeroed) thp.

The bug was discovered 11/30/2017. The weakness was shared 11/30/2017 as EDB-ID 43199 as confirmed exploit (Exploit-DB). The advisory is shared for download at exploit-db.com. This vulnerability was named CVE-2017-1000405 since 11/29/2017. The attack needs to be approached locally. No form of authentication is required for a successful exploitation. Technical details and also a public exploit are known.

A public exploit has been developed by Bindecy and been published immediately after the advisory. It is possible to download the exploit at exploit-db.com. It is declared as proof-of-concept. The vulnerability scanner Nessus provides a plugin with the ID 105100 (Ubuntu 17.10 : linux, linux-raspi2 vulnerabilities (USN-3507-1) (Dirty COW)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family Ubuntu Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 157613 (Oracle Enterprise Linux Security Update for Unbreakable Enterprise kernel (ELSA-2017-3659)).

Upgrading eliminates this vulnerability. A possible mitigation has been published 1 weeks after the disclosure of the vulnerability.

The vulnerability is also documented in the databases at Exploit-DB (43199), Tenable (105100), SecurityFocus (BID 102032†) and SecurityTracker (ID 1040020†). The entries VDB-99283, VDB-109162, VDB-109188 and VDB-113150 are related to this item. VulDB is the best source for vulnerability data and more expert information about this specific topic.

Productinfo

Type

Vendor

Name

Version

License

Website

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 5.3
VulDB Meta Temp Score: 5.1

VulDB Base Score: 3.6
VulDB Temp Score: 3.3
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: 🔍

Physical: Partially
Local: Yes
Remote: No

Availability: 🔍
Access: Public
Status: Proof-of-Concept
Author: Bindecy
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Price Prediction: 🔍
Current Price Estimation: 🔍

0-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

Nessus ID: 105100
Nessus Name: Ubuntu 17.10 : linux, linux-raspi2 vulnerabilities (USN-3507-1) (Dirty COW)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 860457
OpenVAS Name: Fedora Update for kernel FEDORA-2017-9ea11e444d
OpenVAS File: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

Exploit-DB: 🔍

Threat Intelligenceinfo

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

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Exploit Delay Time: 🔍

Timelineinfo

11/29/2017 🔍
11/30/2017 +1 days 🔍
11/30/2017 +0 days 🔍
11/30/2017 +0 days 🔍
11/30/2017 +0 days 🔍
11/30/2017 +0 days 🔍
11/30/2017 +0 days 🔍
12/01/2017 +1 days 🔍
12/07/2017 +6 days 🔍
12/08/2017 +1 days 🔍
12/18/2017 +10 days 🔍
12/18/2024 +2557 days 🔍

Sourcesinfo

Vendor: kernel.org

Advisory: EDB-ID 43199
Status: Confirmed
Confirmation: 🔍

CVE: CVE-2017-1000405 (🔍)
GCVE (CVE): GCVE-0-2017-1000405
GCVE (VulDB): GCVE-100-110104
SecurityFocus: 102032 - Linux Kernel CVE-2017-1000405 Local Race Condition Vulnerability
SecurityTracker: 1040020

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

Entryinfo

Created: 12/01/2017 08:07
Updated: 12/18/2024 15:07
Changes: 12/01/2017 08:07 (90), 12/17/2019 17:25 (6), 12/18/2024 15:07 (17)
Complete: 🔍
Cache ID: 216::103

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Want to know what is going to be exploited?

We predict KEV entries!