Seeking advice: Hardening Project (Coreboot/Heads + Qubes OS)

I am looking for a dedicated machine to implement a full-stack hardening strategy.
​After some research, I am leaning towards the ThinkPad T480.

My goal is a “Zero-Trust” hardware setup. Any insights or alternative model suggestions and recommendations are welcome.

2 Likes

At the very top of the T480 Board config in Heads repo:

# WARNING: This system remains perpetually vulnerable to Spectre v2 (CVE-2017-5715). Mitigations and microcode updates previously applied are now known to be ineffective due to QSB-107 and related CVEs. If Spectre v2 is a concern in your threat model, consider migrating to a platform with ongoing microcode support. Proper OPSEC for Memory Use MUST be followed:https://www.anarsec.guide/posts/qubes/#appendix-opsec-for-memory-use
# Configuration for a T480 running Qubes 4.2.3 and other Linux Based OSes (through kexec)
#
# CAVEATS:
# This board is vulnerable to a TPM reset attack, i.e. the PCRs are reset while the system is running.
# This attack can be used to bypass measured boot when an attacker succeeds at modifying the SPI flash.
# Also it can be used to extract FDE keys from a TPM.
# The related coreboot issue contains more information: https://ticket.coreboot.org/issues/576
# Make sure you understand the implications of the attack for your threat model before using this board.

Issue from coreboot:

If you don’t want to read it (you should), basically all the big security features of Heads are broken on the T480(s) platform until the issue is fixed. You can’t rely on the tamper detection for the firmware (which means you also cannot rely on the checks done for the /boot partition), nor can you rely on having your FDE key stored on the system in favor of using the shorter Heads DUK.

I could recommend a T440p/W541. It’ll be less powerful and still have the Spectre/Meltdown vulns, but you can still be secure of you practice proper memory security, like the T480 note says. It is also, AFAIK, a completely free BIOS (no ME or blobs) and has reasonable performance with the i7-4910MQ with 16GB (T440p) or 32GB (W541) max RAM. On the other end of the spectrum, NovaCustom’s V54/V56 offerings are great for Heads, but you will have full-fledged IME (HAP deactivated), but with less known vulns and much newer hardware.

3 Likes

Unfortunately, you will be greeted by this blocker from Intel:

This quote is from one of my many very ambitious side-projects, which happens to be exactly based on Qubes OS + Coreboot + Heads payload, so if you want to be see a sneak peek, you can take a look at my draft four-phase plan:

Since you are starting from the very first phase, which is choosing the Qubes OS compatible hardware with Coreboot + Heads, you can ask yourself all of the hard cognitive computational questions upfront and cherry pick from this draft four-phase plan against your threat model, use cases and workflow.

There is some important nuance here that needs clarification and exposure:

  • The current NovaCustom models (NV54/56) do not support TME:

This leads to the various real problems of selecting x86 hardware today for a Qubes OS + Coreboot + Heads “Zero-Trust” hardware setup:

  1. Intel CSME, or its precursor, Intel IME is always available on modern hardware supporting Coreboot + Heads in some shape or manner
  2. For Qubes OS + Coreboot + Heads, in addition to the limited hardware selection, you may also need to think about TME
  3. If you do want TME, you must also trust the hardware vendor’s implementation, similar to the SED vs. LUKS situation
  4. TME is reliably available on SKUs using Intel vPro® Enterprise (at the moment)
  5. Intel vPro® Enterprise includes Intel AMT, whereas Intel vPro Essentials, currently used on the NovaCustom NV54/56 models’ SKUs, have Intel® Standard Manageability (ISM), a subset of Intel AMT
  6. The mobile SKUs after Meteor Lake, which is what the NovaCustom NV54/56 currently use, also follow this HSI-3 = no TME = ISM or HSI-4 = TME = AMT pattern, even the recently announced Nova Lake at the beginning of this year

This should be enough information to inform you and others about this predicament, so try not to get too frustrated about this deep hardware entrenchment.

4 Likes

If you care about heads, then I’d say Novacustom is the best option. Nitrokey also sells the same models with heads, also handled by Dasharo. I’m unsure how they handle updates or anything, since Dasharo’s docs don’t mention them directly. My biggest complaint about them is that updates are infrequent, happening a little over a year apart. That said, the alternatives are older hardware that takes a bigger performance hit to protect against all the various speculative attacks.

TME does prevent novacustom from hitting HSI-4, but it’s also a pretty niche protection. While it does vary based on memory module, it’s highly unlikely for memory in a laptop DDR5 module to survive being removed or power cycled, even when cooled. DDR4 may give a little more time, but it’s still not a practical attack like it was for DDR2/3. Note that this is for laptop memory, which is optimized for power usage. From what I understand, there’s a higher chance of the attack succeeding on desktop memory.

For practical attacks, TME protects against someone attaching a digital signal analyzer somewhere along the path between the memory module and controller and dump memory traffic. So TME is important if your threat model involves attackers with specialized equipment and knowledge and physical access to your machine once it’s been powered on and you’ve logged into it.

That said, you wouldn’t be able to hit HSI-2 while using heads on a novacustom laptop since heads requires HAP deactivation and you can’t disable HAP and have boot guard enabled.

1 Like