diff options
author | Damien Miller <djm@cvs.openbsd.org> | 2018-07-03 11:39:55 +0000 |
---|---|---|
committer | Damien Miller <djm@cvs.openbsd.org> | 2018-07-03 11:39:55 +0000 |
commit | 3b166c2d40cc287784f1ee0a51902266dc5d5334 (patch) | |
tree | 164e20b700192ce7604acc9b1d989d3aeb394b74 /usr.bin/ssh/ssherr.c | |
parent | 9f298e278e650a6691afa4c7558391b2a676654d (diff) |
Improve strictness and control over RSA-SHA2 signature types:
In ssh, when an agent fails to return a RSA-SHA2 signature when
requested and falls back to RSA-SHA1 instead, retry the signature to
ensure that the public key algorithm sent in the SSH_MSG_USERAUTH
matches the one in the signature itself.
In sshd, strictly enforce that the public key algorithm sent in the
SSH_MSG_USERAUTH message matches what appears in the signature.
Make the sshd_config PubkeyAcceptedKeyTypes and
HostbasedAcceptedKeyTypes options control accepted signature algorithms
(previously they selected supported key types). This allows these
options to ban RSA-SHA1 in favour of RSA-SHA2.
Add new signature algorithms "rsa-sha2-256-cert-v01@openssh.com" and
"rsa-sha2-512-cert-v01@openssh.com" to force use of RSA-SHA2 signatures
with certificate keys.
feedback and ok markus@
Diffstat (limited to 'usr.bin/ssh/ssherr.c')
-rw-r--r-- | usr.bin/ssh/ssherr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/usr.bin/ssh/ssherr.c b/usr.bin/ssh/ssherr.c index 3c0009d69d8..8ad3d575019 100644 --- a/usr.bin/ssh/ssherr.c +++ b/usr.bin/ssh/ssherr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ssherr.c,v 1.7 2017/09/12 06:32:08 djm Exp $ */ +/* $OpenBSD: ssherr.c,v 1.8 2018/07/03 11:39:54 djm Exp $ */ /* * Copyright (c) 2011 Damien Miller * @@ -139,6 +139,8 @@ ssh_err(int n) return "Invalid key length"; case SSH_ERR_NUMBER_TOO_LARGE: return "number is too large"; + case SSH_ERR_SIGN_ALG_UNSUPPORTED: + return "signature algorithm not supported"; default: return "unknown error"; } |