Privilege Escalation on Windows 8/UEFI Systems
mitre.org
mitre.org
Essentially what this is is a way of installing malware into the kernel bypassing the driver signing requirements. You need admin access already.
It might be useful, but they're clearly trying to make it appear more significant than it is by their technically inaccurate word choices.
Essentially what this is is a way of installing malware into the kernel bypassing the driver signing requirements.
It's funny that being able to load unsigned drivers and/or access hardware directly from userspace in Linux when you are root is not considered a vulnerability, whereas on Windows it is... and it agrees with my hypothesis that proprietary operating systems are moving towards a model of "execution of any code that isn't approved by Microsoft/Apple/Google/$some_corporate_entity is a vulnerability."
It doesn't seem a circular description but the full technical one, at least from a processor privilege point of view.
And I find it pretty amazing, they are invalidating the whole purpose of the UEFI without needing to execute ring0 code.
> While the x86 architecture supports four different privilege levels (numbered 0 to 3), only the two extreme privilege levels are used. Usermode programs are run with CPL 3, and the kernel runs with CPL 0. These two levels are often referred to as "ring 3" and "ring 0", respectively. Such a design decision had been done to achieve code portability to RISC platforms that only support two privilege levels, though this breaks compatibility with OS/2 applications that contain I/O privilege segments that attempt to directly access hardware.
[0] https://en.wikipedia.org/wiki/Architecture_of_Windows_NT#Ker...
Windows has system, high, medium, low, and untrusted security levels that get mapped to security groups. A local admin is high, but not system, etc.
That's the part to get worried about right there - fiddling with SMM is Serious Business. For instance, it's the sort of place NSA hides rootkits:
http://en.wikipedia.org/wiki/System_Management_Mode#Problems