-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UKI: measured systemd-sysext #2117
Comments
the one in charge of loading and measuring stuff is systemd-stub: https://www.freedesktop.org/software/systemd/man/latest/systemd-stub.html# |
I had a quick look at this. I created a sysext raw image and it was properly copied into place. Supposedly TPM13 was used to measure this but we dont do anything with that.
I have no idea how this would fit in our current workflow.
Maybe we have to check with upstream systemd to see what they recommend doing here? I know thye are gonna say pcrlock, which works for ALL TPM slots but... that is v255 only.... |
This is for Kairos 3.1.0, do we mind if it's only supported on systemd 255 + ? |
We should not mind as we are also bumping kcrypt to support only 255 and higher. Plus 3.1 is Ubuntu 24 + fedora 40 which should be systemd 255 anyway |
what on earth is a "signed Verity image"? |
One option would be to bind decryption of partitions to PCR 13 (which systemd already populates with measurements of sysext) and use a process like this to upgrade or change them: #2429 (comment) |
Just for the records, seems there is no support for systemd-sysext to be measured as for now: https://lists.freedesktop.org/archives/systemd-devel/2024-May/050294.html |
After a lot of research I dont think we can do this easily ourselves. It will requrie to basically roll and adapt our own stuff, identical to what the policy does for pcr11 and uki measurements but with raw images. But in a more complex way even. So I think we need to wait and track what upstream will do on this (check systemd mailing list with Leonnard's email) otherwise we have to do a ton of work in areas which are a bit outside of our knowledge. |
@mudler I dont remember but this was a spike no? So ti should be ok to close it with the findings? |
The IMA talked about in systemd lists is about https://sourceforge.net/p/linux-ima/wiki/Home/ |
seems to measure if proper cmdline is passed:
|
tIm not sure how we can use this though lol |
Correct, we need to find out a way to go - do we have the follow ups card created to track the needed work? |
This seems a more nicer explanation https://www.redhat.com/en/blog/how-use-linux-kernels-integrity-measurement-architecture
We cant use this then becuase they are stored under a FAT fs, and that wont allow attributes. |
Well, thats the thing, other than implementing the systemd-measure+policy generation ourselves, I dont see a good approach to this that its secure and doesnt break the full chain of trust :( So no idea what work we really need to do here. |
Let's then create a follow up card for tracking this(our own implementation) , and what would take us to get there, we will discuss then in planning if something that is worth or not. The other option would be to help upstream, correct? But that would require much time for us before we can actually consume such a feature |
follow up card for implementation |
Having UKI means we have most of the OS visible, even if it can't be tampered with. however, we can use systemd sysextensions to overlay portion of the system during boot to have portion of the system encrypted as well. The systemd-sysextensions can actually be in the encrypted portion and be measured by using the
systemd-*
features.Requirements:
The text was updated successfully, but these errors were encountered: