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

If UP flag is not set, expected server response is not success #434

Closed
ynojima opened this issue Jan 12, 2019 · 5 comments
Closed

If UP flag is not set, expected server response is not success #434

ynojima opened this issue Jan 12, 2019 · 5 comments

Comments

@ynojima
Copy link

ynojima commented Jan 12, 2019

By submitting this issue you are acknowledging that any information regarding this issue will be publicly available.

If you have privacy concerns, please email conformance-tools@fidoalliance.org

What protocol and version of the protocol are you testing?

FIDO2

What is your implementation class?

Server

What is the version of the tool are you using?

FIDO Conformance Tools v0.10.192 (BETA)(FIDO2 )

What is the OS and the version are you running?

Windows 10 2018 October Update

Issue description

Server-ServerAuthenticatorAssertionResponse-Resp-3 Test server processing authenticatorData
P-5 Send a valid ServerAuthenticatorAssertionResponse both authenticatorData.flags.UV and authenticatorData.flags.UP are not set, for userVerification set to "preferred", and check that server succeeds
P-8 Send a valid ServerAuthenticatorAssertionResponse both authenticatorData.flags.UV and authenticatorData.flags.UP are not set, for userVerification set to "discouraged", and check that server succeeds

Server-ServerAuthenticatorAssertionResponse-Resp-3 P-5 and P-8 send a response authenticatorData.flags.UP are not set, and assert the server succeeds, but the WebAuthn spec requires to verify that UP flag is set.

Verify that the User Present bit of the flags in authData is set.

https://www.w3.org/TR/webauthn/#verifying-assertion

@yackermann
Copy link
Collaborator

This is silent authenticator scenario that WebAuthn is not supporting at that moment.

@grzuy
Copy link

grzuy commented Jul 13, 2019

For the record, discussions of future plans for "silent authentication" in w3c/webauthn#199.

@grzuy
Copy link

grzuy commented Jul 13, 2019

This is silent authenticator scenario that WebAuthn is not supporting at that moment.

Hi @herrjemand,

Are you saying that you encourage FIDO2 server implementations to deviate from current WebAuthn Level 1 Recommendation and support "silent authentication"?

@MasterKale
Copy link

@herrjemand I believe this issue should be reopened. It's almost three years later and L2 requires up to be true, during both registration and authentication. However, FIDO conformance v1.6.41 still requires RPs to pass authentication responses when up is not set to true:

Screen Shot 2022-02-15 at 7 10 54 PM

I was tempted to make a new issue but since this one so perfectly matched what I'd report I decided to comment here instead. Please let me know if I should and I'll make a new ticket.

@yackermann
Copy link
Collaborator

yackermann commented Aug 15, 2022

So here is what you need to understand. There is a separation between FIDO server, one of the authentication components, and identity manager.

FIDO Server job is to process FIDO assertion correctly. So if user did not enforce UV/UP, it might be that in the future FIDO authenticator may return no UV/UP, and server must process it correctly, and allow it. The identity manager then can utilize this information to allow or disallow login.

This all is up to the identity manager. Allow or disallow UP/UV. Allow or disallow CERTIFIED/NON-CERTIFIED.

Our job is to make sure that servers are correctly support it.

So FIDO certified server, a components in authentication flow, must support all FIDO options, but how you use them is none of our business. So feel free to block anyone who is trying to login with UV/UP false.

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

4 participants