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

V2.9.1 Cryptographic authentication mechanism, protection against disclosure is not relevant #2463

Open
randomstuff opened this issue Dec 14, 2024 · 5 comments · May be fixed by #2507
Open
Labels
4) proposal for review Issue contains clear proposal for add/change something V2 _5.0 - prep This needs to be addressed to prepare 5.0

Comments

@randomstuff
Copy link
Contributor

Current 2.9.1 (talking about smart cards, FIDO devices):

2.9.1 [MODIFIED, LEVEL L2 > L3] Verify that the authentication server stores the cryptographic keys used in verification are securely and protected against** disclosure**, such as using a Trusted Platform Module (TPM) or Hardware Security Module (HSM), or an OS service that can use this secure storage.

On the authentication server, these credentials are actually public keys. It is therefore not that important to protect them against disclosure. You would not need to store a public key in a TPM or HSM for this usage.

For smart card, these are actually X.509 certificates and protecting them agaisnt disclosure often does not make sense at all.

If I understand this requirement correctly, I think it is not needed.

@randomstuff randomstuff changed the title V2.9.1 Cryptographic authentication mechanism, protection against disclosure is not that important V2.9.1 Cryptographic authentication mechanism, protection against disclosure is not relevant Dec 14, 2024
@tghosth tghosth added 1) Discussion ongoing Issue is opened and assigned but no clear proposal yet _5.0 - prep This needs to be addressed to prepare 5.0 V2 labels Dec 15, 2024
@tghosth
Copy link
Collaborator

tghosth commented Dec 15, 2024

Looks like the original NIST requirement was misinterpreted:
https://pages.nist.gov/800-63-3/sp800-63b.html#5172-single-factor-cryptographic-device-verifiers

I would suggest:

"[MODIFIED, LEVEL L2 > L3] Verify that the authentication server stores the cryptographic keys used in verification such that they are protected against modification (and for symmetric keys, against disclosure). This could involve using a Trusted Platform Module (TPM), a Hardware Security Module (HSM), or an OS service that can provide this secure storage."

@tghosth tghosth added 4) proposal for review Issue contains clear proposal for add/change something and removed 1) Discussion ongoing Issue is opened and assigned but no clear proposal yet labels Dec 15, 2024
@tghosth
Copy link
Collaborator

tghosth commented Jan 5, 2025

@randomstuff what do you think about my proposal?

@randomstuff
Copy link
Contributor Author

Yes, maybe.

I am wondering how protection about modification should work because it must be possible in some way to modify these credentials.

And we don't have the same requirement (protection against modification) for password hash, do we? Isn't it weird to require protection against modification for these credentials but not some other?

@tghosth
Copy link
Collaborator

tghosth commented Jan 6, 2025

My guess is that if you can alter this one key then it might lead to widespread compromise whereas if you just modify someone's password that just affects their account.

Again, this is in response to a specific NIST requirement so I think it is ok as it is.

tghosth added a commit that referenced this issue Jan 6, 2025
@tghosth tghosth linked a pull request Jan 6, 2025 that will close this issue
@tghosth tghosth linked a pull request Jan 6, 2025 that will close this issue
@tghosth
Copy link
Collaborator

tghosth commented Jan 6, 2025

Any other comments or do you think we can merge this PR?
#2507

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4) proposal for review Issue contains clear proposal for add/change something V2 _5.0 - prep This needs to be addressed to prepare 5.0
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants