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

RFE: ZeroTrust XIoT Remote Device Attestation #1439

Closed
mmaymann opened this issue Jun 18, 2023 · 4 comments
Closed

RFE: ZeroTrust XIoT Remote Device Attestation #1439

mmaymann opened this issue Jun 18, 2023 · 4 comments
Labels
enhancement needs triage Waiting for discussion / prioritization by team

Comments

@mmaymann
Copy link

TPM 802.1x EAP-TLS X.509:

  • MUD: EAP -> ITAM -> XIoTType ACL creation/approval -> provisioning
  • SBOM: TNC SoH -> ITAM -> continuous lightweight vulnerability scanning -> proactive remediation actions
  • XIoTType checks (CaptivePortal guest, firmware version, OS version, firewall enabled, antivirus enabled, ...)

sonic-net/SONiC#1362

@tashian
Copy link
Contributor

tashian commented Jun 20, 2023

Hi! I'm on the Smallstep team. Thanks for opening an issue.

Could you please elaborate on your use case, and the functionality you think step-ca would need to meet it?

I belive it's possible to use step-ca to issue EAP-TLS certificates for Linux, with TPM-stored private keys, by using step-kms-plugin and wpa_supplicant's PKCS 11 support + TPM2 tools.

But, your particular application sounds a bit more involved.

@mmaymann
Copy link
Author

mmaymann commented Jun 21, 2023

Hi Carl,
Thanks for your reply :)

The functionality I wish to achieve is remote device attestation (2.):

  1. Manufacturer produces the device (with TPM) and forwards the ownership to company via Fido Device Onboard
  2. Company validates device via remote attestation (KeyLime|Akri) could to my knowledge be used for this through EAP) including any custom checks (MUD, SBOM, firmware version, OS version, firewall enabled, antivirus enabled,...).
    As far as I know, need to create a new TPM cert for each check (step-by-step based trust) ?
    Would we need Smallstep for this or would FDO|KeyLime|Akri be able to do this ?
  3. Company provisions validated devices to their desired state

I have given my GoldenPath version of a XIoT Zero-Conf|Trust|Touch target architecture directly from network devices.
Suggestions/enhancements would be highly appreciated :)

Thanks in advance :)

@mmaymann mmaymann changed the title RFE: ZeroTrust XIoT Managed Device Attestation RFE: ZeroTrust XIoT Remote Device Attestation Jun 21, 2023
@tashian
Copy link
Contributor

tashian commented Jun 22, 2023

Our software can support leveraging TPM attestation certificates as part of a PKI strategy that requires strong device identity. If you need EAP-TLS X.509 client certificates that identify a device to the network, you may want to set up a Smallstep CA that devices can enroll with.

If I'm understanding correctly, it sounds like you're also looking for remote boot attestation and integrity monitoring features, which is not really our sweet spot. For that, I think you will need signed TPM PCR quotes to attest some of the things you want to know about a system's state. Keylime may be a better fit for that component. I haven't looked closely at it in a while, but I think it can help you get remote attestations that the system is in a good runtime state.

@mmaymann
Copy link
Author

Hi Carl,
Thanks again for your reply :)
It seems TPM PCR is the thing I need to query maybe using Spiffe/Spire?
I have created a ticket for them spiffe/spire#4281
Thanks for your help :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement needs triage Waiting for discussion / prioritization by team
Projects
None yet
Development

No branches or pull requests

2 participants