<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:og="http://ogp.me/ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:schema="http://schema.org/" xmlns:sioc="http://rdfs.org/sioc/ns#" xmlns:sioct="http://rdfs.org/sioc/types#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" version="2.0" xml:base="https://www.linuxjournal.com/">
  <channel>
    <title>Secure Boot</title>
    <link>https://www.linuxjournal.com/</link>
    <description/>
    <language>en</language>
    
    <item>
  <title>Tamper-Evident Boot with Heads</title>
  <link>https://www.linuxjournal.com/content/tamper-evident-boot-heads</link>
  <description>  &lt;div data-history-node-id="1340426" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/kyle-rankin" lang="" about="https://www.linuxjournal.com/users/kyle-rankin" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Kyle Rankin&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;&lt;p&gt;&lt;em&gt;Learn about how the cutting-edge, free software Heads project detects
BIOS and kernel tampering, all with keys under your control.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;Disclaimer:&lt;/em&gt; I work for Purism, and my experience with Heads began
as part of supporting it on Purism's hardware. As a technical writer,
I personally find ads that mask themselves as articles in technical
publications disingenuous, and this article &lt;em&gt;in no way&lt;/em&gt; is intended to be
an advertisement for my employer. However, in writing this deep dive piece, I
found that mentioning Purism was unavoidable in some places
without leaving out important information about Heads—in particular,
the list of overall supported hardware and an explanation of Heads'
HOTP alternative to TOTP authentication, because it requires a specific
piece Purism hardware.
&lt;/p&gt;

&lt;p&gt;
Some of the earliest computer viruses attacked the boot sector—that bit
of code at the beginning of the hard drive in the Master Boot Record
that allowed you to boot into your operating system. The reasons for this have
to do with stealth and persistence. Viruses on the filesystem itself
would be erased if users re-installed their operating systems, but
if they didn't erase the boot sector as part of the re-install process,
boot sector viruses could stick around and re-infect the operating system.
&lt;/p&gt;

&lt;p&gt;
Antivirus software vendors ultimately added the ability to scan the boot sector
for known viruses, so the problem was solved, right? Unfortunately, as computers,
operating systems and BIOSes became more sophisticated, so did the boot-sector attacks. Modern attacks take over before the OS is launched and
infect the OS itself, so when you try to search for the attack through
the OS, the OS tells you everything is okay.
&lt;/p&gt;

&lt;p&gt;
That's not to say modern defenses to this type of
attack don't exist. Most modern approaches involve proprietary software that locks
down the system so that it can boot only code that's signed by a vendor
(typically Microsoft, Apple, Google or one of their approved third-party
vendors). The downside, besides the proprietary nature of this defense,
is that you are beholden to the vendor to bless whatever code you want
to run, or else you have to disable this security feature completely (if you can).
&lt;/p&gt;

&lt;p&gt;
Fortunately, an alternative exists that is not only free software, but
that also takes a completely different approach to boot security by alerting
you to tampering instead of blocking untrusted code. This approach,
Heads, can detect tampering not only in the BIOS itself but also in
all of your important boot files in the /boot directory, including the
kernel, initrd and even your grub config. The result is a trusted boot
environment with keys fully under your own control.
&lt;/p&gt;

&lt;p&gt;
In this article,
I describe some of the existing boot security approaches in more
detail, along with some of their limitations, and then I describe how Heads
works, and how to build and install it on your own system.
&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/tamper-evident-boot-heads" hreflang="en"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Thu, 31 Jan 2019 14:08:08 +0000</pubDate>
    <dc:creator>Kyle Rankin</dc:creator>
    <guid isPermaLink="false">1340426 at https://www.linuxjournal.com</guid>
    </item>
<item>
  <title>Good Lockdown vs. Bad</title>
  <link>https://www.linuxjournal.com/content/good-lockdown-vs-bad</link>
  <description>  &lt;div data-history-node-id="1340008" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/zack-brown" lang="" about="https://www.linuxjournal.com/users/zack-brown" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Zack Brown&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;&lt;p&gt;
&lt;em&gt;There's an ongoing series of skirmishes between corporations who want to sell
products that users don't fully control and the kernel developers who want
users to be the highest authority. Sometimes these skirmishes manifest in
the form of security patches intended to lock down the kernel. Do they lock
down the kernel against outside attackers? Or do they lock down the kernel
against change from anyone at all, including the user who owns the
device?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;David Howells&lt;/strong&gt; recently pushed a patch out of the
&lt;strong&gt;linux-next&lt;/strong&gt;, submitting it
for inclusion in the main source tree. As he put it, the patch "adds kernel
lockdown support for EFI secure boot". And a man page included in the patch
said:
&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;
The Kernel Lockdown feature is designed to prevent both direct and
indirect access to a running kernel image, attempting to protect against
unauthorized modification of the kernel image and to prevent access to
security and cryptographic data located in kernel memory, whilst still
permitting driver modules to be loaded.
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;
The patch gave birth to an odd debate, but a familiar one by now. &lt;strong&gt;Matthew
Garrett&lt;/strong&gt;, ultimately the main proponent of the patch, kept defending it on
technical grounds that &lt;strong&gt;Linus Torvalds&lt;/strong&gt; felt were meaningless and dishonest,
hiding a secret agenda that included helping companies like
&lt;strong&gt;Microsoft&lt;/strong&gt; lock
users out of making changes to their own systems.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Andy Lutomirski&lt;/strong&gt; was another critic of Matthew's defense of the patch. The
debate circled around and around, with Linus and Andy trying to get Matthew
to admit the true motivation they believed he had and Matthew attempting to
give solid reasons why the patch should go into the kernel. Things got ugly.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;James Morris&lt;/strong&gt; initially accepted the patch, planning to send it up to Linus
for inclusion, and Andy reviewed the code. Among his comments, Andy said
the goal of the patch was not clearly stated. He said for the purpose of his
code review he would assume the goal was to prevent the root user from either
reading kernel memory or intentionally corrupting the kernel.
&lt;/p&gt;

&lt;p&gt;
But, he didn't think those were proper goals for a kernel, even a &lt;strong&gt;UEFI Secure
Boot&lt;/strong&gt; kernel. He said, "the kernel should try to get away from the idea that
UEFI Secure Boot should imply annoying restrictions. It's really annoying
and it's never been clear to me that it has a benefit." He singled out the
idea of preventing the root user from accessing kernel memory as one of
these annoying restrictions.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Kees Cook&lt;/strong&gt; replied with his overall justification for this
patch. He said:
&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/good-lockdown-vs-bad" hreflang="en"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Wed, 08 Aug 2018 12:00:00 +0000</pubDate>
    <dc:creator>Zack Brown</dc:creator>
    <guid isPermaLink="false">1340008 at https://www.linuxjournal.com</guid>
    </item>

  </channel>
</rss>
