web-dev-qa-db-fra.com

Comment testeriez-vous une connexion SSL?

J'essaie d'expérimenter OpenSSL sur mon application réseau et je tiens à tester si les données envoyées sont cryptées et ne peuvent pas être vues par Eavedropper.

Quels outils pouvez-vous utiliser pour vérifier? Cela pourrait-il être fait par programme afin qu'il puisse être placé dans un test unitaire?

21
MrValdez

découvrez le requin de fil de fil http://www.wireshark.org/

et Dump TCP http://fr.wikipedia.org/wiki/tcpdump

Je ne suis pas sûr de les intégrer à des tests d'unité. Ils vous laisseront regarder un niveau très bas, ce qui se passe au niveau du réseau.

Peut-être que pour le test de l'unité, déterminez ce que le flux ressemble à être non crypté et assurez-vous que le flux crypté n'est pas similaire

7
Paul Whelan

openssl a un s_client , qui est un client générique rapide et sale que vous pouvez utiliser pour tester la connexion du serveur. Il montrera le certificat de serveur et le schéma de cryptage négocié.

18
Mark Brackett

J'ai trouvé ce guide très utile. Ce sont quelques-uns des outils qu'il a utilisés:

$ openssl s_client -connect mail.prefetch.net:443 -state -nbio 2>&1 | grep "^SSL"

$ ssldump -a -A -H -i en0

$ ssldump -a -A -H -k rsa.key -i en0

$ ssldump -a -A -H -k rsa.key -i en0 Host fred and port 443

13
f01

Franci Penov a répondu à l'une de mes questions " Log Post Paramètres envoyés à un site Web ", suggérant que je jette un coup d'oeil à Fiddler: http://www.fiddler2.com/fiddler2 /

Je l'ai essayé et ça marche magnifiquement, si cela vous intéresse à la visualisation des demandes HTTP. :)

4
RodgerB

Ouais - Shark Wire ( http://www.wireshark.org/ ) est assez cool (filtres, rapports, statistiques).

En ce qui concerne les tests, vous pouvez le faire dans le cadre des tests d'intégration (certaines options de ligne de commande sont sur Wireshark)

1
Slav

Pour un chèque rapide, vous pouvez utiliser WireShark (anciennement appelé éthéré) pour voir si vos données sont transmises en texte brut ou non.

0
Ciryon

Comme mentionné précédemment http://www.wireshark.org/ , vous pouvez également utiliser Cain et capable Pour rediriger le trafic vers une machine 3ème et tout le protocole de là.

0
Oli