Il semble y avoir un bug dans l'implémentation SSL d'un serveur https auquel je me connecte; le problème est apparu initialement dans mon application, mais depuis je l'ai débogué/reproduit avec l'utilitaire de ligne de commande openssl, donc je suis à peu près certain qu'il n'a rien à voir avec mon application à ce stade.Solution de contournement pour le bogue SSL
Si je me connecte au serveur distant sans autre option que -connect
, OpenSSL envoie un CLIENT-HELLO SSLv2, le serveur répond avec un TLSv1 ServerHello et tout se passe normalement.
Si je me connecte avec -ssl3
, OpenSSL envoie un SSLv3 ClientHello, le serveur répond avec un SSLv3 ServerHello, et encore une fois tout va bien.
Cependant, si je me connecte avec -no_ssl2
ou -tls1
, OpenSSL envoie un TLSv1 ClientHello, et le serveur répond avec "TLS 1.0 Alert [length 0002], fatal unexpected_message"
, ce qui est le problème d'origine que je voyais dans ma demande. Il existe un certain nombre de solutions de contournement possibles qui se présentent à ce stade, mais je recherche idéalement quelque chose de générique, plutôt que spécial-boîtier de ce serveur particulier, donc j'espère qu'il y a une sorte de solution de contournement "standard" pour ça.