Commit Graph

1144 Commits

Author SHA1 Message Date
Trammell hudson
5555e9e8ac
circleci needs to use the new 4.2.1 make 2018-09-18 06:55:16 -04:00
Trammell hudson
292a8bec81
patch for __alloca missing on ubuntu 18.04 (#352) 2018-09-18 06:33:15 -04:00
Trammell hudson
bec3335cf6
verbose builds to avoid quiet timeouts 2018-09-16 17:56:17 -04:00
Trammell hudson
e3ac9b59f3
ensure there is output from the musl-cross bild 2018-09-15 07:11:12 -04:00
Trammell hudson
f96cceb621
do dependencies before checkout 2018-09-15 06:56:42 -04:00
Trammell hudson
081cda2dd4
bootstrap and parallelize build 2018-09-15 06:53:34 -04:00
Trammell hudson
cdd061e063
switch back to 16.04 just to avoid make-4.2 error 2018-09-15 05:59:28 -04:00
Trammell hudson
607381fec2
try apt-update before apt-install 2018-09-15 05:58:00 -04:00
Trammell hudson
b826e4c705
tweak yaml 2018-09-15 05:56:58 -04:00
Trammell hudson
265ed9d043
checkout dependencies 2018-09-15 05:52:38 -04:00
Trammell hudson
96ea6b69ba
try ubuntu 18.04 build 2018-09-15 05:49:32 -04:00
Trammell hudson
32cd59d4f6
try ubuntu 18.04 build 2018-09-15 05:48:03 -04:00
Trammell hudson
2e1dd82992
try enabling circleci builder 2018-09-15 05:42:42 -04:00
tlaurion
95748a82d7
Typo correction in .ash_history 2018-09-03 12:03:19 -04:00
Trammell Hudson
1d27c93a50
Merge branch 'master' of https://github.com/Akendo/heads 2018-08-13 06:33:51 -04:00
Trammell Hudson
070461ad05
Merge branch 'fix-spelling-mistakes' of https://github.com/paulmenzel/heads 2018-08-13 06:33:03 -04:00
Trammell Hudson
2be492d7fd
Merge branch 'linux-4.14-update' 2018-08-13 06:31:37 -04:00
Trammell Hudson
fb37c5dcc8
bds-pr is on the main branch now 2018-08-13 06:31:07 -04:00
Paul Menzel
e594598a28 FAQ: Fix spelling of *convenience* 2018-08-09 23:37:18 +02:00
Paul Menzel
11d30bd635 blobs/x220: Start *Lenovo* with capital letter 2018-08-09 23:36:03 +02:00
Paul Menzel
6c9ff68a87 README: Spell *Chromebook* with capital letter in beginning 2018-08-09 23:36:03 +02:00
Trammell Hudson
4016cd96ab
convert all active board Linux kernel config files into defconfig format 2018-08-09 12:51:12 -04:00
Trammell Hudson
f4e25dd216
Use Linux kernel defconfig format (issue #416)
This reduces the amount of noise in the Linux kernel config files
by only storing the differences from the stock configuration.
It adds a new makefile target 'linux.saveconfig' to convert the
build tree's .config file into config/linux-linuxboot.config.
2018-08-09 12:45:53 -04:00
Trammell Hudson
c7c4b9919c
ensure that the dxe modules will be built with the Heads cross compiler 2018-08-09 12:20:03 -04:00
Trammell Hudson
c98bfe158f
update to 4.14.62 and use the linuxboot.efi BDS 2018-08-09 10:20:22 -04:00
Thierry Laurion
cc4976b3da
Commenting out DROPBEAR support; not fitting into 4MB image with GPG integrated. 2018-08-09 07:51:30 -04:00
Akendo
09b3e7b1dc Merge branch 'master' of github.com:Akendo/heads 2018-07-25 14:14:32 +02:00
Akendo
1b0fdefb5f Add missing paraemter for the correct board.
Without this parameter the qemu board is selected by default. Leading to errors
Signed-off-by: Akendo <akendo@akendo.eu>
2018-07-25 13:59:18 +02:00
Akendo
e830737e9b Update the path within the readme.md from the x220
The path was incorrect for the configuration file of the x220. Leading to some
confusion. Adjusting to to newer path, where the file is located.
2018-07-24 23:46:46 +02:00
Trammell Hudson
1d2dfd4aff
remove orphaned x200 config (merge pr #387) 2018-07-18 06:53:59 -04:00
Trammell Hudson
6170b4cd06
Merge branch 'patch-failure-pr' of https://github.com/osresearch/heads 2018-07-18 06:52:09 -04:00
Trammell Hudson
770c696117
Merge branch 'x230-flash' of https://github.com/tlaurion/heads 2018-07-18 06:50:46 -04:00
Trammell Hudson
d876776ed7
enable coreboot console support 2018-07-18 06:23:13 -04:00
Trammell Hudson
a75d8a0c92
increase CBMEM log level 2018-07-18 06:22:50 -04:00
Trammell Hudson
977c1c3987
update qemu-coreboot Linux config to 4.14.56, enable the CBMEM console 2018-07-17 06:51:38 -04:00
Trammell Hudson
d400c4dd4d
update paths for Linux 4.14.56 (issue #423) 2018-07-17 06:48:06 -04:00
Trammell Hudson
6033015454 Exit if patch fails to apply (issue #429) 2018-07-17 06:28:18 -04:00
Trammell Hudson
22b1241475
Exit if patch fails to apply (issue #429) 2018-07-17 06:22:52 -04:00
Kyle Rankin
fd99d160e8
Improve status messages for Librem Key HOTP output 2018-07-03 12:40:52 -07:00
Kyle Rankin
acb2b34873
Show warning bg color in main menu when HOTP key not found 2018-06-21 16:30:35 -07:00
Kyle Rankin
be665ac4f9
Show red background when HOTP code is invalid
Granted the user should really be using the Librem Key/phone to check
for tampering (since an attacker could control the Heads background
color) but this provides another visual queue for the user with
the GUI menu to catch less sophisticated tampering.
2018-06-21 16:04:46 -07:00
Kyle Rankin
ec3248dbc9
Shorten timeout for Librem Key
Currently the Librem Key tests will time out after 40 seconds, which
adds to the boot time significantly if the user wants to boot without
inserting it. This patch changes that timeout to one second.
2018-06-20 16:20:15 -07:00
Kyle Rankin
fe34aba719
Store HOTP counter directly in /boot instead of TPM
The HOTP counter isn't a secret but is just used to prevent replay
attacks (the time-based counter in TOTP isn't a secret either) so it
doesn't need to be protected in the TPM and storing it as a TPM
monotonic counter was causing conflicts with the Heads configuration
counter as TPM 1.2 can only increment one counter per reboot.

This change moves the HOTP counter into the file in /boot that was
previously keeping track of the TPM counter id.
2018-06-20 09:20:39 -07:00
Kyle Rankin
7dde5c2aca
Revert "Use HOTP TPM counter instead of Heads when signing, if present"
This reverts commit c42084406d.
2018-06-19 16:28:37 -07:00
Kyle Rankin
c42084406d
Use HOTP TPM counter instead of Heads when signing, if present
TPM v1.2 has a limitation in that only a single monotonic counter can be
incremented between reboots [1]. So in the event we are using HOTP
monotonic counters, we need to reference those for the Heads rollback
counter when we update file signatures in /boot, otherwise the increment
stage at kexec-sign-config will fail since at each boot, the HOTP
monotonic counter has already been incremented.

[1] https://projects.csail.mit.edu/tc/tpmj/UsersGuide.html#inccounter
2018-06-19 16:18:10 -07:00
Kyle Rankin
2cacb15729
Add back TPM config counter section to gui-init
The section in gui-init that modifies the Heads TPM counter when signing
config was accidentally removed. This change adds that section back.
2018-06-19 13:03:01 -07:00
Kyle Rankin
31cf85b707
Add Librem Key support to Heads
The Librem Key is a custom device USB-based security token Nitrokey is
producing for Purism and among other things it has custom firmware
created for use with Heads. In particular, when a board is configured
with CONFIG_LIBREMKEY, this custom firmware allows Heads to use the
sealed TOTP secret to also send an HOTP authentication to the Librem
Key. If the HOTP code is successful, the Librem Key will blink a green
LED, if unsuccessful it will blink red, thereby informing the user that
Heads has been tampered with without requiring them to use a phone to
validate the TOTP secret.

Heads will still use and show the TOTP secret, in case the user wants to
validate both codes (in case the Librem Key was lost or is no longer
trusted). It will also show the result of the HOTP verification (but not
the code itself), even though the user should trust only what the Librem
Key displays, so the user can confirm that both the device and Heads are
in sync. If HOTP is enabled, Heads will maintain a new TPM counter
separate from the Heads TPM counter that will increment each time HOTP
codes are checked.

This change also modifies the routines that update TOTP so that if
the Librem Key executables are present it will also update HOTP codes
and synchronize them with a Librem Key.
2018-06-19 12:27:27 -07:00
tlaurion
85eebd0487
Modify flash command to use generic flash.sh 2018-06-06 22:09:57 -04:00
Martin Kepplinger
4ea175838f x230: remove 4M and 8M split-images from the build
The bios regions of the 12M coreboot image is 7M: 4M and 3 of the 8M split
image. The rest of the 8M image _generated_ with fake data and not usable
on real systems! It's dangerous to create them and suggest flashing them
externally.

That's exactly why the x230-flash build target is there: To
have a self-contained 4M image and enable easy unlocking of the 8M image
using the _original_ data.

the heads-wiki project is updated accordingly.

Closes #307
Closes #302
2018-06-04 09:22:05 +02:00
Trammell hudson
584c07042e
Merge branch 'generic_flashrom_script' of https://github.com/kylerankin/heads 2018-06-01 12:40:16 -04:00