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

[Feature Request] Add optional authentication feature #4

Open
madscientist159 opened this issue Feb 18, 2020 · 0 comments
Open

[Feature Request] Add optional authentication feature #4

madscientist159 opened this issue Feb 18, 2020 · 0 comments

Comments

@madscientist159
Copy link

madscientist159 commented Feb 18, 2020

This update method currently accepts arbitrary firmware from the root user (or any user with IPMI node access privileges) and relies on a vendor signature check to screen out malicious uploads. Within the framework of our trustless system design (i.e. we had over full system control to the end user, and do not utilize a master vendor signing key) this means anyone with IPMI node access can compromise the end user system, unless the end user is able to set up a key-based authentication system prior to use.

Needless to say, the requirement to access the BMC over the network (non-local) in order todo initial configuration of the updater signing keys somewhat lessens the overall utility of the host-local update mechanism.

It would be useful to add an optional (compile time option) BMC authentication step prior to, or in conjunction with, accepting the uploaded firmware This could take the form of e.g. a third authentication file with the BMC root password and the firmware hashes, or a post-upload challenge step where the BMC sends the computed firmware hashes to the host for validation, and requests the BMC root password as a challenge prior to applying the updates. The former is somewhat simpler to implement, and would seem to provide a similar overall security footprint provided the update daemon transmits the password and hashes to the BMC without relying on an external user-provided file or temporary file.

This proposal would move authentication back into the BMC's well established, owner-controlled user management systems instead of relying on a vendor signing key as the sole check against malicious firmware upload.

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

No branches or pull requests

1 participant