Fido2 and Fingerprint scan vs touch
Damien Miller
djm at mindrot.org
Mon Oct 11 15:49:21 AEDT 2021
On Sun, 10 Oct 2021, Jeremy Hansen wrote:
> [29D47EC3B2713CA8C4D5C6ED2F759D39_77C7A61CC2EBEA004F2B6E158E046CC9.png] Yes,
> I did precisely this. This is how I generated my key:
>
> ssh-keygen -t ed25519-sk -O resident -O verify-required -f ~/.ssh/id_yubico
>
> Does the verify-required in this case only function if you’re using resident
> keys? I guess that would make sense but this assumes the user is using
> ssh-add -K. Basically I don’t want a user to be able to gain access unless
> they verify with a fingerprint from the security key. No other options
> should be available to get around verifying with a valid fingerprint from
> the sk. If someone loses a key and it’s found, I want it to be useless
> unless someone chops off my finger.
Fist, there's actually a bug in ssh that causes it to prompt for PIN
unconditionally (see below)
Second, AFAIK biometrics and PIN does through the same "UV" (user-
verified) path in FIDO authenticators, so a PIN may be used as a
substitute for a fingerprint. AFAIK whether this happens is up to
the token itself.
Index: sshconnect2.c
===================================================================
RCS file: /cvs/src/usr.bin/ssh/sshconnect2.c,v
retrieving revision 1.351
diff -u -p -r1.351 sshconnect2.c
--- sshconnect2.c 23 Jul 2021 05:24:02 -0000 1.351
+++ sshconnect2.c 11 Oct 2021 04:45:18 -0000
@@ -1256,7 +1256,7 @@ identity_sign(struct identity *id, u_cha
}
sign_key = prv;
if (sshkey_is_sk(sign_key)) {
- if ((sign_key->sk_flags &
+ if (retried && (sign_key->sk_flags &
SSH_SK_USER_VERIFICATION_REQD)) {
retry_pin:
xasprintf(&prompt, "Enter PIN for %s key %s: ",
More information about the openssh-unix-dev
mailing list