From: Matt Caswell Date: Wed, 8 Aug 2018 13:21:33 +0000 (+0100) Subject: Improve fallback protection X-Git-Tag: OpenSSL_1_1_1-pre9~33 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=5df2206048d812c493d441701d55f75bdde2995d;p=oweals%2Fopenssl.git Improve fallback protection A client that has fallen back could detect an inappropriate fallback if the TLSv1.3 downgrade protection sentinels are present. Fixes #6756 Reviewed-by: Rich Salz Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/6894) --- diff --git a/ssl/statem/statem_lib.c b/ssl/statem/statem_lib.c index 8a7d178a51..74a2ec11de 100644 --- a/ssl/statem/statem_lib.c +++ b/ssl/statem/statem_lib.c @@ -1914,6 +1914,9 @@ int ssl_choose_client_version(SSL *s, int version, RAW_EXTENSION *extensions) if (highver != 0 && s->version != vent->version) continue; + if (highver == 0 && (s->mode & SSL_MODE_SEND_FALLBACK_SCSV) != 0) + highver = vent->version; + method = vent->cmeth(); err = ssl_method_error(s, method); if (err != 0) {