Article Index

Details emerged last night of a major security snaffu in current and previous generation intel x86 processors (CPUs) along with those of some other manufacturers. This has resulted in Microsoft, Linux, Google and Apple needing to immediately make available kernel patches which are expected to cause between 5 and 30% performance degradation on most devices.

To quote The Register's original article revealing this issue (available here: www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw)

A fundamental design flaw in Intel's processor chips has forced a significant redesign of the Linux and Windows kernels to defang the chip-level security bug...

Similar operating systems, such as Apple's 64-bit macOS, will also need to be updated – the flaw is in the Intel x86-64 hardware, and it appears a microcode update can't address it. It has to be fixed in software at the OS level, or go buy a new processor without the design blunder.

AMD have been quick to issue a statement, stirring the waters a touch by somewhat-incorrectly stating their CPUs aren't affected, while indulging in some intel bashing along the way:

AMD processors are not subject to the types of attacks that the kernel page table isolation feature protects against. The AMD microarchitecture does not allow memory references, including speculative references, that access higher privileged data when running in a lesser privileged mode when that access would result in a page fault.

... and there you go... it seems you should run out and buy an AMD processor and motherboard right now! But hang on a minute... it's not quite as simple as that - lets look at what the bugs actually are, and what they actually affect.

What's the big deal?
Details of the bugs are still being kept somewhat under wraps, but the major high level details, including example exploitations, have now been revealed (here: meltdownattack.com). There are in fact two separate, but related bugs, which have been called Meltdown & Spectre. While related, they work in slightly different ways and use slightly different attack techniques to trick the affected CPU to incorrectly allow access to what should be secure memory locations. Both bugs are significant and both have a high impact on anything and anyone running an affected CPU.

In essence, these bugs affect any CPU which features "Speculative Execution". Speculative Execution is a feature designed into modern CPUs whereby a processor looks at the code currently being run and "guesses" what code may be needed next. It then goes and runs that code (using another feature known as "Out Of Order Execution") in case the user / application requests it, thus speeding up the overall response of a system. The bugs relate to the way in which CPUs perform that speculative execution and the security the place around the contents of memory produced as a result of, or accessed during, that speculative execution.

Meltdown:
Meltdown is a bug which affects mostly intel CPUs - it involves a process whereby the CPU can be tricked into allowing "user mode" applications to access "kernel mode" memory locations. (User mode in this case equates to what an application sees as being available; kernel mode equates to a highly restricted, god-like, see-all-do-all view of what data is available) This has the potential to allow for a malicious application to read the contents of kernel memory and reveal important, secure, information such as system passwords or other restricted information. Meltdown is so named because the bug "melts security boundaries which are normally enforced by the hardware".

Spectre:
Spectre is a bug which affects pretty much any CPU, certainly any which features Speculative Execution, specifically pretty much any intel CPU, pretty much any AMD CPU, pretty much any ARM CPU and probably many others. It involves a process where an application tricks the CPU into giving access to, and reading, memory allocated to (and therefore supposedly protected by) another application. Again, this has the potential to allow for a malicious application to read the contents of any other application's memory and reveal important, secure, information such as system passwords or other restricted information. Spectre is named after the root cause of the bug - "Speculative Execution".

Today's Weather

 

Thought for the day...

A bird in the hand - might just file for assault, be careful out there boys!

Member Login