Skip to content
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

Consider signing FCOS update metadata #826

Open
jlebon opened this issue May 11, 2021 · 3 comments
Open

Consider signing FCOS update metadata #826

jlebon opened this issue May 11, 2021 · 3 comments

Comments

@jlebon
Copy link
Member

jlebon commented May 11, 2021

Describe the enhancement

The FCOS Cincinnati service receives its update metadata as JSON from the Cloudfront'ed S3 bucket over TLS. Matching the security model employed for the OSTree data itself, it'd be nice if we additionally signed this metadata and added "downgrade protection" (i.e. have the service ignore signed metadata with a metadata["last-modified"] date older than its previous fetch; though this will cause "stop this rollout" events to no longer be a pure git revert).

Additional information

Came out of discussions in coreos/rpm-ostree#2819 and #749.

@bgilbert
Copy link
Contributor

See also #774, which is the same issue for a different set of metadata.

@cgwalters
Copy link
Member

Also as part of this I realized that I think just due to pure oversight, rpm-ostree has never added the ostree ref binding metadata. We could consider turning that on, but we'd need to work through the implications.

Another thing that would likely help is to add a much weaker binding like ostree.binding = "coreos" and libostree would require that that metadata stay the same across upgrades by default. That would block things like a MITM offering a signed silverblue commit as an FCOS update.

@rugk
Copy link
Contributor

rugk commented May 12, 2021

added the ostree ref binding metadata. We could consider turning that on, but we'd need to work through the implications.

Then do so. 😉 Is there an issue tracking this?
I’d be very interested to see this being done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants