Lucene search

K
xenXen ProjectXSA-105
HistorySep 23, 2014 - 12:00 p.m.

Missing privilege level checks in x86 HLT, LGDT, LIDT, and LMSW emulation

2014-09-2312:00:00
Xen Project
xenbits.xen.org
54

5.8 Medium

CVSS2

Access Vector

ADJACENT_NETWORK

Access Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:A/AC:L/Au:N/C:P/I:P/A:P

0.001 Low

EPSS

Percentile

26.0%

ISSUE DESCRIPTION

The emulation of the instructions HLT, LGDT, LIDT, and LMSW fails to perform supervisor mode permission checks.
However these instructions are not usually handled by the emulator. Exceptions to this are

  • when the instruction’s memory operand (if any) lives in (emulated or passed through) memory mapped IO space,
  • in the case of guests running in 32-bit PAE mode, when such an instruction is (in execution flow) within four instructions of one doing a page table update,
  • when an Invalid Opcode exception gets raised by a guest instruction, and the guest then (likely maliciously) alters the instruction to become one of the affected ones.
    Malicious guest user mode code may be able to leverage this to install e.g. its own Interrupt Descriptor Table (IDT).

IMPACT

Malicious HVM guest user mode code may be able to crash the guest or escalate its own privilege to guest kernel mode.

VULNERABLE SYSTEMS

Xen versions from at least 3.2.x onwards are vulnerable. Older versions have not been inspected.
Only user processes in HVM guests can take advantage of this vulnerability.

CPENameOperatorVersion
xenge3.2.x

5.8 Medium

CVSS2

Access Vector

ADJACENT_NETWORK

Access Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:A/AC:L/Au:N/C:P/I:P/A:P

0.001 Low

EPSS

Percentile

26.0%