1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Defeating Secure Boot With Linux Kexec

Linux Kernel

Published on 04 December 2013 09:58 AM EST
Written by Michael Larabel in Linux Kernel
29 Comments

Matthew Garrett has written an insightful blog post about security issues pertaining to the Linux kernel's kexec functionality that could defeat any security benefits provided by Secure Boot. Using kexec could even allow you to boot a Windows kernel.

Matthew has long been dealing with UEFI/SecureBoot issues and his latest blog post is entitled Subverting security with kexec. Garrett noted, "The beauty of this approach is that it doesn't rely on any kernel bugs - it's using kernel functionality that was explicitly designed to let you do this kind of thing (ie, run arbitrary code in ring 0). There's not really any way to fix it beyond adding a new system call that has rather tighter restrictions on the binaries that can be loaded. If you're using signed modules but still permit kexec, you're not really adding any additional security. But that's not the most interesting way to use kexec. If you can load arbitrary code into the kernel, you can load anything. Including, say, the Windows kernel. ReactOS provides a bootloader that's able to boot the Windows 2003 kernel, and it shouldn't be too difficult for a sufficiently enterprising individual to work out how to get Windows 8 booting. Things are a little trickier on UEFI - you need to tell the firmware which virtual -> physical map to use, and you can only do it once. If Linux has already done that, it's going to be difficult to set up a different map for Windows. Thankfully, there's an easy workaround. Just boot with the 'noefi' kernel argument and the kernel will skip UEFI setup, letting you set up your own map."

The post is interesting and certainly worth reading in full. For those wanting some background information on Kexec, stop by Wikipedia.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. Khronos Group Announces Vulkan, OpenCL 2.1, SPIR-V
  2. Samsung 850 EVO SSD Linux Benchmarks
  3. Kubuntu 15.04 Is Turning Out Quite Nice, Good Way To Try Out The Latest KDE
  4. 5-Way Linux Distribution Comparison On The Core i3 NUC
  5. OCZ ARC 100 Linux SSD Benchmarks
  6. Lenovo ThinkPad X1 Carbon Works Great As A Linux Ultrabook
Latest Linux News
  1. AMD Will Release Mantle Programming Guide, API Reference This Month
  2. Unreal Engine Made Free By Epic Games
  3. Qt 5.5 Alpha Is Getting Close, But Still Behind Schedule
  4. OpenBSD Sponsors Work For Better Browser Security
  5. Improved ODF Reading Support Comes To KDE's Calligra
  6. Another Step Closer On The New Linux Benchmarking Test Farm
  7. Confirmed: Vulkan Is The Next-Gen Graphics API
  8. Kdenlive Ported To Qt5/KF5, Coming To KDE Applications 15.04
  9. HTC & Valve Partnered Up For The Steam VR Headset
  10. 8cc: A Small C11 Compiler
Most Viewed News This Week
  1. More Proof That Allwinner Is Violating The GPL
  2. The Tremendous Features Of Fedora 22
  3. Krita 2.9 Released, Their Biggest Release Ever
  4. A Single UEFI Executable With The Linux Kernel, Initrd & Command Line
  5. LLVM 3.6 & Clang 3.6 Deliver More Features, Complete C++14 Support
  6. Firefox 36 Brings Full HTTP/2 Support
  7. RISC OS Now Works With The Raspberry Pi 2
  8. ALSA 1.0.29 Released
%%CLICK_URL_UNESC%%