bottlerocket-os / bottlerocket-os/bottlerocket
Improvements to measuring Bottlerocket settings to PCR 8
- Dominant language
- Rust
- Stars
- 9.7k
- Forks
- 586
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 11
Description
**What I'd like:**
Bottlerocket measures OS settings into PCR 8 via rottweiler. It currently excludes `settings.network.hostname` and `settings.updates.seed`:
https://github.com/bottlerocket-os/bottlerocket-core-kit/blob/b76210536e1f19f8922d1fa1854c43adae7a97bd/sources/rottweiler/src/system.rs#L164-L179
I would like more control over what OS settings are measured into PCR 8 with the ultimate goal of making PCR 8 predictions viable via [pcrsys](https://github.com/bottlerocket-os/twoliter/tree/develop/tools/pcrsys).
- [ ] Add `settings.measurement.excluded-settings` to variants with the `encrypted-storage` feature enabled
- [ ] Add optional PCR prediction to `pcrsys` when provided input user data TOMl
**Any alternatives you've considered:**
Keep the status quo
Contributor guide
Research direction
Start with rottweiler's sources/rottweiler/src/system.rs around lines 164-179 to understand the current PCR 8 exclusions, then inspect the pcrsys tool and its user data TOML input. Define the measurement exclusion setting for encrypted-storage variants and optional PCR prediction; done means both requested checklist items are implemented and predictions reflect the supplied settings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- operating-systems, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100