LA CRYPTOGRAPHIE · 2018. 8. 26. · M.Sc. Cryptographie FRANÇOIS GAGNON, PH.D. Cette...

31
LA CRYPTOGRAPHIE: UN ENJEU STRATÉGIQUE POUR LES ENTREPRISES François Gagnon Lab R&D Cybersécurité @ Cégep Ste-Foy [email protected] www.cegep-ste-foy.qc.ca/cybersecurite

Transcript of LA CRYPTOGRAPHIE · 2018. 8. 26. · M.Sc. Cryptographie FRANÇOIS GAGNON, PH.D. Cette...

  • LA CRYPTOGRAPHIE:

    UN ENJEU STRATÉGIQUEPOUR LES ENTREPRISES

    François GagnonLab R&D Cybersécurité @ Cégep Ste-Foy

    [email protected]/cybersecurite

  • Chercheur principal Lab de R&D Cybersécurité

    Professeur d’informatique

    Adjunct ProfessorProfesseur AssociéChercheur Associé…

    Ph.D Network Security

    M.Sc. Cryptographie

    FRANÇOIS GAGNON, PH.D.

  • Cette présentation contient des idées, des concepts et du contenu provenant d’un peupartout.

    Rien ne vient réellement de moi, sauf les erreurs.

    Un merci particulier à:Louis NadeauCédrick ChaputGoogle image

    DISCLAIMER

  • CryptographieSymétrique

    Asymétrique

    SSL/TLS

    Enjeu stratégiqueProblématiques à surveiller

    Checklist

    Outils

    Conclusion

    Questions

    PLAN

    Questions

    Questions

    Questions

    Questions

    Questions

  • CRYPTO ?

  • À quoi ça sert:

    Confidentialité

    Authentification

    Intégrité

    Non-répudiation

    CRYPTO ?

    Threats (STRIDE) Measures Properties (CIA+)

    Spoofing Identity1. Appropriate authentication2. Protect secret data3. Proof of identity

    Authentication

    Tampering with data

    1. Appropriate authorization2. Hashes3. MACs4. Digital signatures5. Tamper resistant protocols

    Integrity

    Repudiation1. Digital signature2. Timestamps3. Audit trails

    Non-repudiation

    Information Disclosure

    1. Authorization2. Privacy-enhanced protocols3. Encryption4. Protect secrets5. Don’t store secrets

    Confidentiality

    Denial of Service1. Appropriate auth.2. Filtering & throttling3. QoS

    Availability

    Elevation of Privilege 1. Run with least privilege Authorization

  • SYMÉTRIQUE

    ------------------------------------Texte clair------------------------------------

    Fdhs39d%&$/(%(&/

    TexteChiffré

    943ngf?3jd*&jdk2&

    ------------------------------------Texte clair------------------------------------

    Encryption Décryption

    Pour échanger un message secret, il

    faut d’abordéchanger une clé

    secrète !!!

    La même clé sertpour encrypter et

    décrypter.

  • SYMÉTRIQUE

    Problème d’échange de clés secrètes

    Banque AutreBanque

    Gmail Hotmail Facebook VPN

    Paypal Twitter

    airbnb ??? ??? ebay...

  • Internet

    ASYMÉTRIQUE

    ------------------------------------Texte clair------------------------------------

    Fdhs39d%&$/(%(&/

    TexteChiffré

    943ngf?3jd*&jdk2&

    Encryption

    Serveur

    Publiquedonc pas secrète.MAIS….

    ------------------------------------Texte clair------------------------------------

  • ASYMÉTRIQUE

    PAS de problème d’échange de cléssecrètes

    Problème d’authentification des cléspubliques

    …mais…

  • ASYMÉTRIQUE

    Comment fait-on pour s’assurer que la clé publique que l’on reçoit est bien

    celle du serveur auquel on veut parler?

    Et non celle d’un pirate qui veut obtenirnotre mot de passe.

  • ASYMÉTRIQUE

    Chiffer avec la clé publique(tous peuvent le faire)

    Déchiffrer avec la clé privée(seulement le serveur)

    Confidentialité

  • ASYMÉTRIQUE

    On peut aussi utiliser la crypto asymétrique à l’envers

    Chiffer avec la clé privée(seul le serveur peut le faire)

    Déchiffrer avec la clé publique(tous peuvent vérifier)

    Signature (authentification)

  • SSL/TLS

  • SSL/TLS

  • SSL/TLS

  • Exemple web:desjardins.com

    Exemple fichier: test.cyberseclab.ca

    CERTIFICATS

  • Mécanique de négociationCompatibilité

    Validation du certificat côté clientNavigateurs, Courriel, OS, VPN, … App mobiles !

    Mécanique de révoquation

    La chaîne de signatures (et la racine)

    Architecture:HTTP HTTPS

    PROBLÉMATIQUES

  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

    Version du protocole:

    SSLv2, SSLv3, TLSv1.0, TLSv1.1, TLSv1.2

    Algo:d’échange de clé: ECDHE

    d’authentification: RSA

    d’encryption: AES_128_GCM

    de MAC (Message Authentication Code): SHA256

    NÉGOCIATION

  • STRATÉGIE

    Aujourd’hui ça prend une stratégiepour la crypto.

  • LA CRYPTO C’EST PAS UNE CABANEÀ MOINEAU…

  • 1994 SSL 1

    1995 SSL 2

    1996 SSL 3

    1999 TLS 1.0

    2006 TLS 1.1

    2008 TLS 1.2

    2014 draft TLS 1.3

    LA CRYPTO C’EST PAS DU MCDO…

    ?

  • Firesheep 2010 (partial encryption)

    BEAST 2011 (browser + protocol)

    CRIME 2012 (options - compression)

    BREACH 2013 (options - compression)

    Lucky13 2013 (iplementation - timing)

    Heartbleed 2014 (implementation)

    GOTO FAIL 2014 (implementation)

    POODLE 2014 (rétrocompatibilité)

    FREAK 2015 (crypto)

    Logjam 2015 (Negociation + crypto bad habit)

    DROWN 2016 (Legacy + bad sharing habit)

    LA CRYPTO C’EST PAS DU MCDO…

  • COMPRENDRE LA LIGNE DU TEMPS D’UN ALGORITHME BRISÉ

    RC4 est brisé, il ne faut plus l’utiliser

    Plus généralement : Une faiblesse peut être théorique pendant plusieurs années

    avant d’être prouvée

    Encore plus de temps peut s’écouler avant que la faiblesse devienne pratique (exploitation)

    Secret

    1987Design

    1994Public

    Public Doutes Brisé

    1995Premier biais

    trouvé

    2001 à 2005Autres biais

    2007Première

    démonstration

    2013Officiellement

    mort

    2015D’autresattaques

  • GESTION DES CLÉS PRIVÉES

  • Algorithmes de hashage:

    Migration d’un algorithme de hashage versun autre pour la BD de username/password

    On n’a pas les données clairs

    Il faut prévoir des stratégies de mise à jour des données chiffrées…

    CRYPTO VS MISE À JOUR

  • Librairies SSL/TLSQuelle(s) libraires vos serveurs utilisent ?Mise à jour ?

    Algorithmes supportés par le serveurLongeur de clés suffisanteBrisée ? Faible?Propriétés de sécurité (PFS)Compatibilité avec les clients (IE6)

    Gestion de vos clés/certificatsOù sont-ils ?Quand doit-on les changer ?Qui y a accès ?

    CHECKLIST-MONITORING

  • Mozilla recommande: https://wiki.mozilla.org/Security/Server_Side_TLS

    IETF ne recommande pas:https://tools.ietf.org/html/rfc7540#page-83

    SSLlabs.com

    letsencrypt.org

    OUTILS

  • Perfect forward secrecyMême si quelqu’un obtient notre clé privée, il

    ne devrait pas être en mesure de décrypter les vieux messages secrets.

    Certificate pinningOn indique par quel certificat la chaîne doit se

    terminer (racine).HSTS - HTTP Strict Transport SecurityLe serveur indique au client qu’il ne doit

    qu’utiliser HTTPS pour accéder à ce “site”.Seulement la première connection de chaque

    client est vulnérable à HTTP HTTPS.

    BUZZWORDS

  • Si vous avez de la crypto vous devez avoir:

    une stratégie de gestion

    des gens qui connaissent ça et qui sont à jour.

    des solutions pour monitorer.

    des processus pour mettre à jour.

    CONCLUSION

  • François Gagnon

    Lab R&D Cybersécurité

    @ Cégep Ste-Foy

    [email protected]

    www.cegep-ste-foy.qc.ca/cybersecurite

    QUESTIONS