bottlerocket-os / bottlerocket-os/twoliter
Enable NSS PKIX verifier for secureboot signature checks
- Dominant language
- Rust
- Stars
- 34
- Forks
- 43
- Avg merge
- 11h 13m
- Merged PRs (30d)
- 16
Description
During image creation, bottlerocket uses the `pesigcheck` utility to verify secureboot signatures on all signed artifacts. The signature validation is implemented via libnss.
Bottlerocket SDK 0.43.0 release will move to NSS 3.101.
In NSS 3.101, lib::pkix was enabled as the default X.509 validator. This causes `pesigcheck` to fail with "Peer's Certificate issuer is not recognized," despite the CA issuer being provided to `pesigcheck` for the check.
Contributor guide
Research direction
Start by tracing the image-creation path that invokes the `pesigcheck` utility and inspect how libnss is configured for signature validation. Reproduce the failure with NSS 3.101 and confirm that signed artifacts validate when their CA issuer is supplied; done means secureboot checks no longer report that the certificate issuer is unrecognized.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100