Comment SSL fait-il pour protéger les communications ?
Comment je peux être sûr que le SSL me protège?
Tout d’abord, SSL utilise un système de chiffrement :
- Asymétriques (comme RSA ou Diffie-Hellman). Il est utilisé pour générer la master key (clé principale) qui permettra de générer des clés de session.
- Symétrique (DES, 3DES, IDEA, RC4…) en utilisant les clés de session pour chiffrer les données.
Et un système de :
- Signature cryptographique des messsages (HMAC, utilisant MD5, SHA…) pour s’assurer que les messages ne sont pas corrompus.
C’est lors de la négociation SSL que le client et le serveur choisissent des systèmes communs (chiffrement asymétrique, symétrique, signature et longueur de clé). Dans votre navigateur, vous pouvez voir la liste des systèmes utilisés en plaçant votre curseur sur le petit cadenas quand vous êtes dans une page en HTTPS.
A quoi servent les certificats ?
Lors d’une négociation SSL, il faut s’assurer de l’identité de la personne avec qui on communique. Comment être sûr que le serveur auquel vous parlez est bien celui qu’il prétend être ?
C’est là qu’interviennent les certificats. Au moment de vous connecter sur un serveur web sécurisé, ce dernier vous enverra un certificat contenant le nom de l’entreprise, son adresse, etc. C’est une sorte de pièce d’identité.
Comment vérifier l’authenticité de cette pièce d’identité ?
Ce sont les PKI (Public Key Infrastructure), des sociétés externes (auxquelles vous faites implicitement confiance), qui vont vérifier l’authenticité du certificat. (La liste de ces PKI est incluse dans votre navigateur. Il y a généralement VeriSign, Thawte, etc.)Ces PKI signent cryptographiquement les certificats des entreprises (et ils se font payer pour ça).
Les utilisation de SSL: HTTPS, SSH, FTPS, POPS…
- HTTPS: c’est HTTP+SSL. Ce protocole est inclus dans pratiquement tous les navigateurs, et vous permet (par exemple) de consulter vos comptes bancaires par le web de façon sécurisée.
- FTPS est une extension de FTP (File Transfer Protocol) utilisant SSL.
- SSH (Secure Shell): c’est une sorte de telnet (ou rlogin) sécurisé. Cela permet de se connecter à un ordinateur distant de façon sûre et d’avoir une ligne de commande. SSH possède des extensions pour sécuriser d’autres protocoles (FTP, POP3 ou même X Windows).
Il est aussi possible de sécuriser des protocoles en créant des tunnels SSL. Une fois le tunnel créé, vous pouvez faire passer n’importe quel protocole dedans (SMTP, POP3, HTTP, NNTP…). Toutes les données échangées sont automatiquement chiffrées. On peut faire cela avec des outils comme STunnel (http://www.stunnel.org) ou SSH.
En fait, avec le protocole POP3 que vous utilisez habituellement pour aller lire votre courrier, les mots de passe et les messages transitent en clair sur Internet. Par contre il est possible de voler vos mots de passe et vos messages.
Avec le tunnel SSL, et sans rien changer aux logiciels client et serveur, vous pouvez sécuriser la récupération de vos mails: personne ne peut vous volez vos mots de passe ou emails puisque tout ce qui passe à travers le tunnel SSL est chiffré. Mais cela nécessite d’installer STunnel sur le client et sur le serveur. Certains fournisseur d’accès proposent ce service, mais ça reste trop rare. Demandez à votre fournisseur d’accès si il a ce genre de service en place. STunnel permet ainsi de sécuriser la majorité des protocoles basé sur TCP/IP sans modifier les logiciels. Il est très facile à installer.
Alors quand je vois le cadenas, c’est sûr ?
Il faut reconnaître que le cadenas vous indique que les communications entre votre navigateur et le site web sont sûres: personne ne peut les espionner, et personne ne peut trafiquer les communications. Mais il ne garantie rien d’autre !
En conclusion, Pour prendre une image:
HTTPS (le cadenas), c’est un peu comme un fourgon blindé: Il vous assure la sécurité du transport. Mais vraiment que du transport. Le fourgon blindé ne vous garantiera pas que la banque utilise de bons coffre-forts et qu’elle les ferme bien. Le fourgon bindé ne garantie pas non plus que la banque ne fait pas de malversations. Le fourgon blindé ne garantie vraiment que le transport. C’est la même chose pour HTTPS (le petit cadenas du navigateur). De la même manière que des truands peuvent louer les services d’un fourgon blindé, des pirates et truands peuvent très bien créer un site sécurisé (avec le petit cadenas). Soyez vigilants, et ne confiez pas n’importe quelle information sur n’importe quel site, cadenas ou pas.
Source : sebsauvage