Formation: M2 MIAGE SIID
L'interception SSL/TLS
Le fonctionnement,
Entre enjeux et risques, Les bonnes pratiques.
Edouard Petitjean
25 août 2017
Préambule
La sécurisation des échanges numériques,
un domaine difficile à appréhender. Autrefois
réservés aux forces militaires, les moyens permettant de chiffrer
des données se sont répandus aux organisations privées et
étatiques. Suite à la démocratisation du SSL/TLS qui
permet de sécuriser des échanges liés au web, aux mails et
d'autres moyens de communication, le mode d'utilisation d'Internet a
radicalement changé. Le lieu où la confiance ne pouvait
régner, voir qualifié de « sans foi ni loi »
1, est devenu depuis lors le réseau des communications
privées, des achats, de la gestion administrative, etc...
Après que les banques et les sites de e-commerces
utilisaient le SSL/TLS pour sécuriser les échanges avec leurs
clients, ce sont les plates-formes de communications (webmails, réseaux
sociaux, etc...) qui ont adopté cette technologie. Avec cette
dernière pratique, ce fut les principes du respect de la vie
privée et du secret des correspondances qui faisaient office de
justification pour sécuriser les échanges. Mais c'est avec les
révélations d'Edward Snowden sur PRISM2 que
l'échange des données sécurisé entre un client et
un serveur et de façon qu'aucun intermédiaire ne puisse
comprendre la communication
est devenu l'argument commercial majeur pour la plupart des
acteurs du web. Par conséquent, nous pouvons voir de plus en plus de ces
communications sécurisées, souvent via SSL/TLS,
apparaître.
Il est tout à fait normal de nos jours, que les
utilisateurs d'un système informatique d'une entreprise accèdent
à ces sites sécurisés, que ça soit dans le cadre
professionnel ou personnel. Or, ces échanges sécurisés,
entre un utilisateur et le site distant, ne laissent aucune visibilité
à l'entreprise sur leurs contenus. Loin de vouloir « espionner
» les employés, ce sont les éventuelles fuites de
données et la récupération de fichiers malveillants qui
posent problème. En effet, sans pouvoir comprendre les échanges,
les différents systèmes de sécurité permettant
à une entreprise de se protéger deviennent aveugle. La solution?
L'interception SSL/TLS. Mais est-elle bénéfique? Sans
risques?
Ce présent article va présenter la technique
dite interception SSL. Il sera découpé en trois parties.
La première expliquera le protocole SSL/TLS ainsi que la technique
d'interception SSL/TLS. Puis dans un second temps, cet article
traitera des enjeux et risques que présente l'interception SSL/TLS.
Nous terminerons par les bonnes pratiques en matière de
déploiement et d'utilisation de cette technique.
1.
Edouard Petitjean M2 MIAGE SIID 1
Expression dite par Alain Finkielkraut le 31/01/2014 sur la
chaîne de BFMTV
2. Vaste programme de surveillance des communications mondiales
mis en place par la NSA en 2007
Edouard Petitjean M2 MIAGE SIID 2
Sommaire
I
|
L'interception SSL
|
4
|
1
|
Quelle différence entre SSL et TLS?
|
5
|
|
1.1
|
Historique du SSL et du TLS
|
5
|
|
1.2
|
Obsolescence du SSL
|
5
|
|
1.3
|
Un abus de langage historique
|
7
|
2
|
TLS : un protocole
compliqué?
|
8
|
|
2.1
|
Les objectifs du TLS
|
8
|
|
2.2
|
Le positionnement du TLS dans le modèle TCP/IP
|
8
|
|
2.3
|
Un protocole fortement évolutif
|
9
|
|
2.4
|
Rappel cryptographique
|
9
|
|
|
2.4.1 Chiffrement symétrique
|
9
|
|
|
2.4.2 Chiffrement asymétrique
|
10
|
|
|
2.4.3 Empreinte numérique
|
11
|
|
2.5
|
Authentification: un principe de confiance
|
12
|
|
|
2.5.1 Certificat X.509 : La carte d'identité
numérique
|
13
|
|
|
2.5.2 La relation de confiance
|
14
|
|
|
2.5.3 PKI : La confiance via un tiers
|
15
|
|
2.6
|
TLS : le protocole en détail
|
17
|
|
|
2.6.1 Les messages d'extension
|
17
|
|
|
2.6.2 TLS Record Protocol
|
17
|
|
|
2.6.3 Handshake Protocol
|
19
|
|
|
2.6.4 Alert Protocol
|
22
|
|
|
2.6.5 Change Cipher Spec Protocol
|
22
|
3
|
L'interception TLS
|
23
|
|
3.1
|
L'interception TLS sortante
|
24
|
|
|
3.1.1 Le placement du proxy TLS
|
25
|
|
|
3.1.2 Une autorité de certification interne
|
25
|
|
3.2
|
L'interception TLS entrante
|
26
|
|
|
3.2.1 Le placement du proxy TLS
|
27
|
|
|
3.2.2 Hébergement des clefs privées
|
27
|
II Des Enjeux et Des Risques 28
4 L'origine du chiffrement des échanges
29
5 Aspect technique 31
5.1 Enjeux sécuritaires 31
5.1.1 Les pare-feux nouvelle génération: l'analyse
poussée 31
5.1.2 Utilisation d'un proxy 32
5.1.3 Journalisation des connexions 32
5.2 Risques : les contraintes techniques 33
5.2.1 La performance 33
Edouard Petitjean M2 MIAGE SIID 3
|
|
|
SOMMAIRE - SOMMAIRE
|
|
5.3
|
5.2.2 L'interception
5.2.3 Les protections des clients
5.2.4 La protection des serveurs
Récapitulatif
|
34
36
37
38
|
6
|
Une législation complexe
|
39
|
|
6.1
|
Un chiffrement libre sous condition
|
39
|
|
6.2
|
Les obligations légales
|
40
|
|
|
6.2.1 Données personnelles : la protection quoiqu'il
arrive
|
40
|
|
|
6.2.2 L'interception TLS dans la protection des données
|
40
|
|
|
6.2.3 La responsabilité en cas de crime ou délit
|
41
|
|
|
6.2.4 L'obligation d'une journalisation
|
42
|
|
|
6.2.5 La loi HADOPI
|
42
|
|
|
6.2.6 Interception dans le cadre judiciaire
|
42
|
|
6.3
|
La légalité de l'interception TLS
|
43
|
|
|
6.3.1 Des atteintes aux secrets
|
43
|
|
|
6.3.2 La sous-traitance
|
44
|
|
|
6.3.3 Atteinte au STAD?
|
44
|
|
6.4
|
Récapitulatif
|
44
|
7
|
L'impact sociologique
|
46
|
|
7.1
|
La destruction de la relation de confiance
|
46
|
|
7.2
|
Une surveillance en trop ?
|
46
|
|
7.3
|
La nécessité d'informer
|
47
|
III Quelques bonnes pratiques 48
8 Des réflexes à avoir 49
9 La mise en oeuvre technique 50
9.1 L'interception sortante 50
9.1.1 Gestion de l'AC interne 50
9.1.2 Protection des clefs privées 50
9.1.3 Sécurité des connexions entre les clients
internes et le proxy TLS 50
9.1.4 Sécurité des connexions entre le proxy TLS et
les serveurs 51
9.1.5 Protection de la vie privée 51
9.2 L'interception entrante 51
9.2.1 Sécurisation entre les clients externes et le
reverse proxy TLS 51
9.2.2 Protection des clefs privées 52
10 Informations et obligations légales
53
10.1 Vis à vis des utilisateurs 53
10.2 Rappel sur l'obligation des administrateurs 53
11 Conclusion 54
Edouard Petitjean M2 MIAGE SIID 4
Première partie
L'interception SSL
Edouard Petitjean M2 MIAGE SIID 5
Chapitre 1
Quelle différence entre SSL et TLS?
Avant de commencer à expliquer le fonctionnement du
protocole, l'article va traiter de la différence entre SSL 1
et TLS 2. Ceci afin d'éviter toutes confusions sur la suite
de ce texte.
1.1 Historique du SSL et du TLS
Pour la petite histoire, le SSL fut créé par
Netscape en 1994. Baptisée « SSL 1.0 », cette version resta
dans le domaine de la théorie. C'est en 1995 avec l'arrivée du
« SSL 2.0 » que le protocole fut utilisé. Mais cette version
présentait plusieurs failles, par conséquent, la version «
SSL 3.0 » fut créée en 1996. Avec cette nouvelle version, et
une nouvelle RFC3 (6101), le protocole devint de plus en plus
utilisé et permet une nouvelle utilisation d'internet. Notamment,
l'émergence du e-commerce est fortement due à la
sécurisation des connexions que procurait le « SSL 3.0 ».
En janvier 1999, un nouveau protocole fut défini, le
« TLS 1.0 » mais par l'IETF4 et non plus par Netscape. Ce
« nouveau » protocole découle directement du « SSL 3.0
», au point où le numéro de version de « TLS 1.0 »
est 3.1 : « SSL 3.1 ». La structure reste la même,
seules quelques fonctionnalités liées à la cryptographie
sont améliorées. Ces modifications empêchent une
compatibilité directe entre le « SSL 3.0 » et le « TLS
1.0 », mais ce dernier à la capacité de basculer en «
SSL 3.0 » selon le besoin. Ce qui permet au TLS de se déployer
petit à petit tout en gardant l'utilisation du SSL possible. Par la
suite, le TLS va subir des modifications afin qu'il soit plus
sécurisé et plus abouti. On peut noter le support du
Kerberos5, de l'AES6 ou encore du SNI7.
Par la suite, les versions « TLS 1.1 » (2006) et
« TLS 1.2 » (2008) furent créées, chacun apportant son
lot d'amélioration et surtout de sécurisation dans
l'établissement du canal entre le client et le serveur. De nos jours,
seules les versions « TLS 1.1 » et « TLS 1.2 » sont
épargnées de vulnérabilité connue. La version
« TLS 1.0 » fut victime de BEAST8, ce sont les navigateurs
qui permettent la protection contre cette attaque. Par conséquent, le
« TLS 1.0 » est considéré comme vulnérable
même si c'est le protocole le plus utilisé à ce jour. Le
graphique fig. 1.1 p.6 9 présente l'évolution
d'utilisation des différents protocoles entre 2014 et 2016.
|