Certificate Transparency : des journaux publics en ajout seul pour s´ ecuriser TLS Florian Maury (ANSSI) 15 d´ ecembre 2016 Florian Maury (ANSSI) Certificate Transparency 15 d´ ecembre 2016 1/28
Certificate Transparency :des journaux publics en ajout seul
pour securiser TLS
Florian Maury (ANSSI)
15 decembre 2016
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 1/28
Rappel du contexte
Des centaines d’autorites de certification :
I nombreux rapports d’incident (emissions non-sollicitees oucertificats invalides : Comodo, Diginotar, CNNIC,Symantec. . . )
Solutions possibles :
I changer de systeme de confiance ?
I renforcer les exigences ?
I detecter les anomalies ?
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 2/28
Rappel du contexte
Des centaines d’autorites de certification :
I nombreux rapports d’incident (emissions non-sollicitees oucertificats invalides : Comodo, Diginotar, CNNIC,Symantec. . . )
Solutions possibles :
X changer de systeme de confiance ?
X renforcer les exigences ?
X detecter les anomalies ?
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 2/28
Journaliser les certificats emis
Journalisation publique des certificats emis :
I base de donnees classique inadaptee
I proprietes d’integrite trop faibles
Proprietes attendues :
I en ajout seul
I verifications efficaces
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 3/28
Structure d’un journal en ajout seul
Repose sur les fonctions de hachage cryptographiques(e.g. SHA-2) :
I arbre de Merkle (1979)
P
EO
NM
DCBA
Exemples d’usage : Git, Bitcoin
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 4/28
Certificate Transparency
Des journaux de certificats pour TLS
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 5/28
Principe general de Certificate Transparency (CT)
IETF :
I RFC 6962
I WG trans : draft rfc-6962-bis-21
Objectifs :
I journaliser les certificats emis par les autorites decertification (AC) publiques
I permettre la detection des emissions defectueuses,frauduleuses ou indesirables
I prevenir les interceptions TLS
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 6/28
Certificate Transparency (CT) :
le synoptique theorique
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 7/28
Relations entre les acteurs
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Del
ivra
nce
de
cert
ifica
ts
Rep
on
ses
HT
TP
/T
LS
Dem
an
de
de
cert
ifica
ts
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 8/28
Relations entre les acteurs
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Del
ivra
nce
de
cert
ifica
ts
Rep
on
ses
HT
TP
/T
LS
Auditeurs
Moniteurs
Journaux
Dem
an
de
de
cert
ifica
ts
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 8/28
Relations entre les acteurs
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 8/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 8/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
Dem
an
de
de
cert
ifica
tsD
ema
nd
ed
ece
rtifi
cats
enregistre
fournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase 1 : soumission des certificats aux journaux
Tout le monde peut soumettre un certificat valide
Etape generalement faite par l’autorite de certifica-tion dans le workflow d’emission de certificats
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 9/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase 1bis : remise d’un engagement de journali-sation par chaque journal
Journalisation effective apres un delai :
I engagement de journalisation remisimmediatement(Signed Certificate Timestamp (SCT))
Les SCT peuvent constituer une preuve de dys-fonctionnement d’un journal
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 10/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase 2 : distribution des engagements de journal-isation
Engagements de journalisation distribues aux navi-gateurs :
I verification qu’il y a eu demande dejournalisation du certificat observe pendantune transaction HTTPS
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 11/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase 3 : verification synchrone par le navigateur
Si les engagements sont absents, emis dans le fu-tur, ou avec des signatures invalides
Alors ⇒ erreur
Exemples d’erreurs :
I affichage d’un intersticiel de securite
I indicateur visuel
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 12/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase 4 : verification asynchrone par le navigateur
Verification de l’honnetete du journal :
I demande aux journaux de preuve de lajournalisation effective du certificat
I propagation de cette preuve
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 13/28
Relations entre les acteurs
Clients HTTP et leurs tiers de confiance(CERT ?)
Titulaires de noms de domaine et leurstiers de confiance (CERT)
Autorites de certification, Google. . .
Navigateur
Serveur Web /Administrateur / Titulaire
Autorite de Certification
Req
uet
esH
TT
P/
TL
S
Auditeurs
Moniteurs
Journaux
propage les SCT
pro
pa
ge
les
SC
T veri
fie
les
pre
uve
s
con
sult
eet
veri
fie
enregistreD
ema
nd
ed
ece
rtifi
catsfournit le SCT
Del
ivra
nce
de
cert
ifica
ts+
SC
T
Rep
on
ses
HT
TP
/T
LS
+S
CT
Phase continue, en parallele des autres ou a posteriori :surveillance des journaux
Les moniteurs (titulaires de noms de domaine,CERTs) :
I recherchent dans les journaux de certificatsinvalides, frauduleux, ou emis par erreur
Necessite le telechargement des archives completes desjournaux !
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 14/28
Certificate Transparency (CT)
en pratique
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 15/28
Implementation(s) cliente(s)
Clients TLS compatibles a ce jour :
I Chrom(e|ium)
I Firefox 52 Nightly
Implementations partielles :
I pas de verification asynchrone (mais remontees par UMA)
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 16/28
Politique CT appliquee par Chrom(e|ium)
Criteres :
I nombre d’engagements de journalisation fonction de laduree de validite du certificat
I engagements provenant de journaux agrees
I au moins un engagement emis par Google et un autreemis par un tiers
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 17/28
Impact de la politique CT de Chrom(e|ium)
Impact d’un echec de la validation synchrone :
I actuellement :
I indicateurs visuels (generalement)I intersticiel de securite (rares cas)
I pour les certificats emis apres octobre 2017 :
I intersticiel de securite
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 18/28
Les journaux
Les journaux, en chiffres :
I 12 journaux utilises dont 5 administres par Google, 2 parSymantec et 2 par WoSign
Taille du plus gros journal : 48M de certificats (≈ 65Go enGzip)
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 19/28
Distribution des engagements
Distribution par :
I le certificat (extension X.509)
I l’information de revocation du certificat (extension OCSP)
I le serveur web (extension TLS) :
I Nginx 1.9+, Apache et HaProxy (trunk)
I exemple : google.fr, ritter.vg, x-cli.eu
I Seul moyen ne requerant pas le concours de l’AC
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 20/28
Surveillance des journaux (� moniteurs �)
API en HTTP/JSON :
I permet l’interrogation par relais-proxy
Quelques implementations open source utilisables :
I implementation de reference par Google
I CertSpotter
Quelques produits en SaaS (gratuits) :
I Digicert Certificate Monitoring
I Comodo CRT.SH
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 21/28
Audit des journaux
Protocole encore non normalise
I draft-ietf-trans-gossip-03
Creation de miroirs
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 22/28
Success stories :
Certificats detectes
avec Certificate Transparency
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 23/28
Incidents detectes avec Certificate Transparency
Exemples d’incidents detectes :
I Symantec : certificats de test
I Facebook : certificats emis par un prestataire
I WoSign/StartSSL : certificats antedates
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 24/28
Conclusion
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 25/28
Conclusion : point d’attention №1
Certificate Tranparency (CT) :
I est deja deploye
I contient plusieurs millions de certificats
I est applique par Chrom(e|ium) et bientot par Firefox
I sera obligatoire (pour Chrome) a partir d’octobre 2017
Avec Chrom(e|ium) :
I visibilite de la barre verte == CT OK
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 26/28
Conclusion : point d’attention №2
Que retenir de cette presentation ?
I titulaires de noms de domaine et CERTs :
I cherchez dans les journaux CT si des certificats ontete emis pour vos noms de domaine et sans votreaccord !
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 27/28
Merci pour votre attention
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 28/28
Bibliographie 1
I Implementation de reference de CThttp://github.com/google/certificate-transparency
I Site � Certificate Monitoring � de Digicerthttps://www.digicert.com/certcentral/certificate-monitoring.htm
I Site moniteur de Comodohttps://crt.sh
I CertSpotterhttps://sslmate.com/certspotter
I Rapport d’incident Symantechttps://www.symantec.com/connect/sites/default/files/Test_Certificates_Incident_Final_
Report_10_13_2015v3b.pdf
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 28/28
Bibliographie 2
I Rapport d’incident Facebookhttps://fr-fr.facebook.com/notes/protect-the-graph/
early-impacts-of-certificate-transparency/1709731569266987/
I Rapports d’incidents WoSignhttps://wiki.mozilla.org/CA:WoSign_Issues
I Site implementant un debut de protocole de rumeurhttps://ct.grahamedgecombe.com/
I Creation de miroirs distribues par Bittorrenthttps://www.x-cli.eu/ct
Florian Maury (ANSSI) Certificate Transparency 15 decembre 2016 28/28