Différentes versions de TLS dans ClientHello à partir du même client


0

J'ai un client python. En utilisant ssl.SSLContext() ( documentation ici ) et set_ciphers(myciphers) (où myciphers est la liste des suites de chiffrement que je modifie à chaque poignée de main, c’est-à-dire à chaque connexion par socket). Je peux contrôler la liste des suites de chiffrement du client. Le défaut SSLContext en python, désactivez SSL 2.0 et SSL 3.0 par défaut et je ne modifie en rien les versions dans le code de mon client.

J'envoie 3 poignées de main au site Web en utilisant une liste de suites de cryptage différente dans chacune. Je ne change pas la version.

Dans Wireshark, le ClientHello dans la colonne "protocole", je vois différentes versions? Je contacte le même site. Le client ne change pas la version.

1) Pouvez-vous m'expliquer pourquoi je vois une version différente du protocole TLS? 2) Si ce n'est pas la version réelle proposée par le client (qui devrait être TLS 1.2), où puis-je obtenir la version TLS proposée par le client?

Voici une capture d'écran à clarifier (veuillez excuser sa forme mais pour anonymiser les sites et les noms de PC): enter image description here

MODIFIER: Bien que la colonne ClientHello affiche TLSv1, lorsque je clique sur l’enregistrement et que je vois la zone développée. Je vois ça:

> Secure Socket Layer
 > TLSv1.2 Record Layer: Handshake Protocol: Client Hello

Je suis confus. Il est très important pour moi de veiller à ce que mon client utilise toujours TLS 1.2. J'ai laissé le défaut du python qui devrait le faire selon sa documentation.

EDIT 2: Je vois le filtre pour voir TLS 1.0 (comme le montre l’écran, ClientHellos envoie TLSv1). Mais avec ce filtre de vue:

ssl.handshake.version==0x0301

Non ClientHell o les messages m'apparaissent. Seulement quelques ServerHello. S'il te plait explique moi. C'est assez déroutant.


Il semble possible que vous ayez trouvé un bogue dans le dissecteur Wireshark pour TLS (ou quel que soit le code renseignant le nom du protocole dans la colonne affichée dans la fenêtre de résumé). Pouvez-vous trouver un certain chiffre dans la suite de chiffrement qui le déclenche? Certains chiffrements étaient peut-être obsolètes avant TLS 1.2, alors chaque fois que ces chiffrements obsolètes apparaissent, cette colonne récapitulative indique qu'il doit s'agir de TLS 1.0.
Spiff
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.