Hi, Running LibreSSL portable 2.1.1 from FreeBSD ports on FreeBSD 10.1 $ /usr/local/bin/openssl version LibreSSL 2.1 $ uname -aFreeBSD meterkast3.example.org 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r264324M: Tue Nov 11 13:46:58 CET 2014 r...@meterkast3.example.org:/usr/obj/usr/src/sys/BEASTIE101 amd64
To my surprise, the LibreSSL openssl binary does not see the -sslv3 option as an error. (examples and captures with google.com server)
$ /usr/local/bin/openssl s_client -connect 173.194.65.147:443 -ssl3 CONNECTED(00000003)where I would expect the same behaviour as e.g. openssl 0.9.8 when calling it with the -tls1_2 option.
Next to that I see that it succefully negotiates a connection using an ssl3-capable server. Client Hello and Server Hello both have 0x0300 as can be seen in attached capture and at end of this mail.
Is this expected behaviour? I.e. has LibreSSL only removed the sslv3 server capability?
When I setup an SSL server with OpenSSL 1.0.1j from base, I can not connect to it straight away but I can connect when I use -ssl3 (both in log below)
$ openssl version OpenSSL 1.0.1j-freebsd 15 Oct 2014 $ openssl s_server -ssl3 -accept 4443 Using default temp DH parameters Using default temp ECDH parameters ACCEPT ERROR shutting down SSL CONNECTION CLOSED ACCEPT -----BEGIN SSL SESSION PARAMETERS----- <snip> -----END SSL SESSION PARAMETERS----- <snip>CIPHER is ECDHE-RSA-AES256-SHA Secure Renegotiation IS supported DONE shutting down SSL CONNECTION CLOSED ACCEPT $ /usr/local/bin/openssl s_client -connect localhost:4443 CONNECTED(00000003)34378806536:error:14077102:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocol:s23_clnt.c:497:
--- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 7 bytes and written 280 bytes --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE --- $ /usr/local/bin/openssl s_client -connect localhost:4443 -ssl3 <snip> --- SSL handshake has read 1524 bytes and written 262 bytes --- New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-SHA Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE SSL-Session: Protocol : SSLv3 Cipher : ECDHE-RSA-AES256-SHASession-ID: 468B5F3CE1CF1CDA9F49312EE9424BD985B22FC1A9EA92692C9C6EB818F0C725
Session-ID-ctx:Master-Key: 78D830C15F518C6FC9C5D9760B8B3F09D58F516944E72C9F2A89D3B3E6DD6D78189B1B0A702D4FBB8CDDEBF83B19A433
Start Time: 1416914867 Timeout : 7200 (sec) Verify return code: 21 (unable to verify the first certificate) --- Thanks! Bernard (Barnerd) Spil. depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA verify error:num=20:unable to get local issuer certificate verify return:0 --- Certificate chain 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=www.google.com i:/C=US/O=Google Inc/CN=Google Internet Authority G2 1 s:/C=US/O=Google Inc/CN=Google Internet Authority G2 i:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA 2 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority --- Server certificate -----BEGIN CERTIFICATE----- <snip> -----END CERTIFICATE-----subject=/C=US/ST=California/L=Mountain View/O=Google Inc/CN=www.google.com
issuer=/C=US/O=Google Inc/CN=Google Internet Authority G2 --- No client certificate CA names sent --- SSL handshake has read 3578 bytes and written 258 bytes --- New, TLSv1/SSLv3, Cipher is ECDHE-RSA-RC4-SHA Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE SSL-Session: Protocol : SSLv3 Cipher : ECDHE-RSA-RC4-SHASession-ID: D807A5102140A0D0F5DF4562E961C485F7C0D506572FF7852D61207576F3C5A5
Session-ID-ctx:Master-Key: 175DDE1E866E41DC8F9D64779B0BBB5F4AA663F2DBF1EB1C312036CFE9E580997653A73CB6C7AEB2310B6D5793F13C55
Start Time: 1416913094 Timeout : 7200 (sec) Verify return code: 20 (unable to get local issuer certificate) ---
libressl-ssl3.pcap
Description: application/vnd.tcpdump.pcap