Linux Kernel PIT Emulation arch/x86/kvm/i8254.c __kvm_migrate_pit_timer race condition

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 4.9 | $0-$5k | 0.00 |
Summary
A vulnerability, which was classified as problematic, has been found in Linux Kernel. Affected by this issue is the function __kvm_migrate_pit_timer of the file arch/x86/kvm/i8254.c of the component PIT Emulation Handler. The manipulation leads to race condition.
This vulnerability is traded as CVE-2014-3611. There is no exploit available.
Applying a patch is the recommended action to fix this issue.
Details
A vulnerability, which was classified as problematic, has been found in Linux Kernel (Operating System) (affected version unknown). This issue affects the function __kvm_migrate_pit_timer of the file arch/x86/kvm/i8254.c of the component PIT Emulation Handler. The manipulation with an unknown input leads to a race condition vulnerability. Using CWE to declare the problem leads to 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. Impacted is availability. The summary by CVE is:
Race condition in the __kvm_migrate_pit_timer function in arch/x86/kvm/i8254.c in the KVM subsystem in the Linux kernel through 3.17.2 allows guest OS users to cause a denial of service (host OS crash) by leveraging incorrect PIT emulation.
The weakness was shared 10/24/2014 by Lars Bull with Google as Bug 1144878 as confirmed bug report (Bugzilla). The advisory is shared at bugzilla.redhat.com. The identification of this vulnerability is CVE-2014-3611 since 05/14/2014. The exploitation is known to be easy. The attack can only be done within the local network. The successful exploitation needs a simple authentication. Technical details are known, but no exploit is available. The following code is the reason for this vulnerability:
timer = &pit->pit_state.timer; if (hrtimer_cancel(timer)) hrtimer_start_expires(timer, HRTIMER_MODE_ABS);
The vulnerability scanner Nessus provides a plugin with the ID 78702 (CentOS 7 : kernel (CESA-2014:1724)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family CentOS Local Security Checks. The commercial vulnerability scanner Qualys is able to test this issue with plugin 195790 (Ubuntu Security Notification for Linux Vulnerabilities (USN-2462-1)).
Applying a patch is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The vulnerability will be addressed with the following lines of code:
timer = &pit->pit_state.timer; mutex_lock(&pit->pit_state.lock); if (hrtimer_cancel(timer)) hrtimer_start_expires(timer, HRTIMER_MODE_ABS); mutex_unlock(&pit->pit_state.lock);
The vulnerability is also documented in the databases at X-Force (97774), Tenable (78702), SecurityFocus (BID 70743†), SecurityTracker (ID 1031200†) and Vulnerability Center (SBV-46807†). The entries VDB-67304, VDB-68067 and VDB-68068 are related to this item. If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Affected
- Red Hat Linux 5/6/7
Product
Type
Vendor
Name
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.2VulDB Meta Temp Score: 4.9
VulDB Base Score: 5.7
VulDB Temp Score: 5.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 4.7
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Race conditionCWE: CWE-362
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔍
Status: Unproven
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 78702
Nessus Name: CentOS 7 : kernel (CESA-2014:1724)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Port: 🔍
OpenVAS ID: 703060
OpenVAS Name: Debian Security Advisory DSA 3060-1 (linux - security update)
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: PatchStatus: 🔍
0-Day Time: 🔍
Patch: 2febc839133280d5a5e8e1179c94ea674489dae2
Timeline
05/14/2014 🔍10/24/2014 🔍
10/24/2014 🔍
10/24/2014 🔍
10/28/2014 🔍
10/28/2014 🔍
10/29/2014 🔍
11/10/2014 🔍
11/12/2014 🔍
02/23/2022 🔍
Sources
Vendor: kernel.orgAdvisory: Bug 1144878
Researcher: Lars Bull
Organization: Google
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2014-3611 (🔍)
GCVE (CVE): GCVE-0-2014-3611
GCVE (VulDB): GCVE-100-68069
OVAL: 🔍
X-Force: 97774 - Linux Kernel PIT emulation denial of service, Medium Risk
SecurityFocus: 70743 - Linux Kernel KVM CVE-2014-3611 Denial of Service Vulnerability
SecurityTracker: 1031200 - Linux Kernel KVM PIT Timer Race Condition Lets Local Guest Users Deny Service on the Host System
Vulnerability Center: 46807 - Linux Kernel 3.2 and earlier Local DoS via KVM \x27asm/kvm_host.h\x27 - CVE-2014-3611, Medium
See also: 🔍
Entry
Created: 10/28/2014 14:59Updated: 02/23/2022 19:30
Changes: 10/28/2014 14:59 (91), 06/10/2017 09:40 (1), 02/23/2022 19:15 (3), 02/23/2022 19:22 (11), 02/23/2022 19:30 (1)
Complete: 🔍
Cache ID: 216:0A1:103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.