-
Notifications
You must be signed in to change notification settings - Fork 131
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
Shim 15.8 for Trusted Disk #385
Comments
To verify our shim bootloader, please use the following command:
|
Review for
|
First of all, thanks for the review and for the tip about increasing the vendor specific sbat level. We rebuilt our shim with a new sbat level and changed the submission text with the new hash and new tag:
To your questions:
|
Did you dig into the load options issue at all? I wonder if that's a sign that something else might be going wrong. Did you see this behavior on all the systems you tried it on, or are those laptops just a subset? Building shim with a non-linux toolchain is not well tested, and we may want to be cautious. At the very least it would be a good idea to explicitly test self revocation. Just make sure you do this on a system that you can then easily disable secure boot on. |
Strangely, this behavior only occurs on a few models (e.g., Dell 7420) and only in combination with the DEFAULT_LOADER variable. Without deactivating the load options, the code overrides our hardcoded path and filename and produces a non-bootable name for the second stage loader.
Unfortunately, we haven't had the time yet to debug the error adequately. And since it only occurs in our specific case, and we don't need the load options, it was safer for us to completely deactivate the load options. As you can see in our Dockerfile, our shim is built using a traditional Ubuntu Linux toolchain and well tested. Specifically, self-revocation is also tested. Only our pre-boot authentication EFI software (the second stage loader) is built using the Microsoft Visual Compiler. |
I checked the binary and it seems alright. The build reproduces, checksum matches, and characteristics are OK - please see rhboot/shim#634 in regard to the SBAT generation numbers provided in the application. Regarding the aforementioned strange behavior, I recall seeing something related a while ago. I'm not a low-level developer and can't help with diagnosing the issue, but this comment may come in handy. |
Thx for the info @aronowski Due to the latest information from rhboot/shim#634 and #355, we reverted our last commit so that our shim has a Vendor SBAT level of 1 again. We also changed the submission text back to the old hash and old tag:
I have read the entire thread, and it really seems to be the same error. But since we don't want this function, I think in our case it is the best option to completely deactivate the load options and force our hardcoded path and filename in |
On 2024.04.03 06:34:20, Ingo Fankner wrote:
Thx for the info @aronowski
Due to the latest information from rhboot/shim#634
and #355, we reverted our last
commit so that our shim has a Vendor SBAT level of 1 again.
We also changed the submission text back to the old hash and old tag:
`rohdeschwarz-shim-x64-20240219`
Considering that the current written consensus is what it is, and the
"downstream generation number should never go down" consensus hasn't been yet
written in the official shim's SBAT.md document, I myself can see this decision
fine as of today.
Just to inform, I operate in real-time with the information that is available at
the time of writing the reply. It may change in the future and it did, a short
time after the linked application.
I have read the entire thread, and it really seems to be the same error. But
since we don't want this function, I think in our case it is the best option
to completely deactivate the load options and force our hardcoded path and
filename in `DEFAULT_LOADER`, regardless of whether there is an error in it or
not.
Seems OK to me, but I likely won't be able to review such a patch, since I'm not
a low-level programmer and won't be able to tell, if the final code would have
no security issues. I do, however, trust the developer team at Rohde & Schwarz
Cybersecurity GmbH, as there already were signed shims provided by Microsoft -
so I'll leave a thorough peer-review of the patch for another accredited
reviewer.
However, ping me once the patch gets introduced - I'll take a quick look at the
latest application tag and see if e.g. the build reproduces.
… --
Reply to this email directly or view it on GitHub:
#385 (comment)
You are receiving this because you were mentioned.
Message ID: ***@***.***>
|
Is there anything else we could do or answer since the question tag has not been reset yet? The patch "bypass_bootoptions.patch" only bypasses the bootoption parsing. Maybe @steve-mcintyre? Perhaps you could take a look at this again since you've already reviewed our last version 15.6 with this patch? |
Alright, we're talking about that simple patch! I got confused a bit. Looks like
it's safe after all - it's been accepted by Microsoft as part of [application
#257](#257).
Just one more question. To [quote
@jsetje](#385 (comment)),
At the very least it would be a good idea to explicitly test self revocation.
Have you checked, whether that works alright? In particular on the laptops where
the bug was present.
If so, then things look OK to me. For more information on the load options
behaving differently across different machines I did take a look at the comments
in the `parse_load_options` function in
[`load-options.c`](https://github.com/rhboot/shim/blob/main/load-options.c)
|
hi @aronowski yes, we have tested the shim self-revocation feature on a wide range of systems, also on these problem laptops |
Thank you for the update. Accepting! |
Confirm the following are included in your repo, checking each box:
What is the link to your tag in a repo cloned from rhboot/shim-review?
https://github.com/Rohde-Schwarz/shim-review/tree/rohdeschwarz-shim-x64-20240219
What is the SHA256 hash of your final SHIM binary?
6a887c457f51cee59855c4b98834e9eab273a6400ab9137bcd0a99dbae1aaa60
What is the link to your previous shim review request (if any, otherwise N/A)?
Shim 15.6
Shim 15.4
The text was updated successfully, but these errors were encountered: