Support Tails OS with persistent storage, firmware verification and Tails system verification
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- linux
- Lĩnh vực
- operating-systems, security
Hướng nghiên cứu
Start by reading the related Heads issues #1260, #1480, #1651, and #1873, plus the discussion in pull request #2153; the issue does not identify specific files or tests. Compare the two proposed Tails USB approaches, including how Heads verifies firmware and the Tails system partition and stores the HOTP counter and primary handle hash. Done means agreeing on a viable approach and implementing support for Tails persistent storage and system verification without verifying its changing storage partition.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
I would like to boot a Tails OS USB drive from Heads with
- a) Tails persistent storage
- b) TOTP/HOTP verification of Heads firmware
- c) and verification of the Tails system partition (no separate /boot partition).
Verification of the persistent storage partition on the USB drive is a non-goal as it will change during each usage.
As dual boot seems another complex story (https://tails.net/support/faq/index.en.html#permanent-install) let’s reduce it to Tails only without an internal hard drive.
Regarding Tails there are two options:
- Putting ISO + detached signature on a USB drive and create or mimic a persistent storage to achieve a) and c). TOTP/HOTP verification would have to become independent of a /boot partition to achieve b).
- Regular installation of Tails on a USB drive with persistent storage and treating it like an internal drive during Heads boot to store and find the primary handle hash, the HOTP counter, hashes signature etc.
In case 1. it is currently not possible to just load the ISO and create a persistent storage. I didn’t manage to manually create/copy an existing persistent storage and open it either.
Thus we would have to find a hack to create and open a persistent storage when booting from a verified Tails ISO. Anyway, we would still have to find a place to store the primary handle hash and the HOTP counter. Maybe in the TPM? (https://github.com/linuxboot/heads/issues/1260)
In case 2. we would need Heads to treat an external drive as an internal one as discussed here https://github.com/linuxboot/heads/issues/1873#issuecomment-2540552084. But even then Tails installed writing e.g. an .img file with dd does not have a separate /boot partition. Also, I have not yet tested how Tails reacts to storing extra kexec_*.txt files under / in the system partition.
2. has the advantage that the Tails USB would be completely bootable from a non-Heads machine, which is currently not the case with a USB that contains an ISO and a detached signature, but is not bootable.
Why does Heads actually expect a separate /boot partition? Would it be an option to write all the kexec_*.txt files on the system partition? This partition by design should not change barring Tails updates.
I considered installing Tails on an internal drive but the FAQ discourages it:
https://tails.net/support/faq/index.en.html#permanent-install
I am motivated to put work into this, incl. Into the related issues such as getting rid of the dependency of TOTP/HOTP verification on a /boot partition.
- https://github.com/linuxboot/heads/issues/1651
- https://github.com/linuxboot/heads/pull/2153
- https://github.com/linuxboot/heads/issues/1480
Before I get started I would like to get some feedback and ideas on what seems to be the most promising approach.
- Ngôn ngữ chính
- Makefile
- Star
- 1.6k
- Fork
- 211
- Merge trung bình
- 2 ngày 11 giờ
- Pull request đã merge (30 ngày)
- 6
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của linuxboot/heads
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
-
Update w530 board ownerĐang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
-
help wanted security SMM upstream
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tất cả issue của linuxboot/heads
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
void-linux/void-runit#141 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
ARM-software/sysarch-acs#600 ·
Maintainer thường phản hồi trong vòng 1 ngày