<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> <title>Tor</title> <link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css"> <link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css"> <style> .trsp {background-color: rgba(0, 0, 0, 0.8);} .green {color: green;} .red {color: red;} li {list-style-type: none} li.c {list-style-type: circle} ul.c {padding-left: 70px;padding-right: 70px;} </style> <!-- Theme used for syntax highlighting of code --> <link rel="stylesheet" href="../../node_modules/reveal.js/lib/css/zenburn.css"> <link rel="stylesheet" href="../../node_modules/font-awesome/css/font-awesome.min.css"> <!-- Printing and PDF exports --> <script> var link = document.createElement( 'link' ); link.rel = 'stylesheet'; link.type = 'text/css'; link.href = window.location.search.match( /print-pdf/gi ) ? '../../node_modules/reveal.js/css/print/pdf.css' : '../../node_modules/reveal.js/css/print/paper.css'; document.getElementsByTagName( 'head' )[0].appendChild( link ); </script> </head> <body> <div class="reveal"> <div class="slides"> <section data-background-image="images/tor/hacker.jpg"> <h1 class="trsp" style="margin-top: 30%">Comment surfer couvert ...</h1> <h4 class="trsp" style="margin-top: 2%; text-transform: lowercase;"> <img src="https://fc.isima.fr/~mazenod/images/mazenovi.png" style="margin: 0; margin-left: 10px; margin-right: 10px;padding: 0;float: right;border: 0; border-radius: 50%;width: 5%" /> <a href="http://m4z3.me/pintofscience">http://m4z3.me/pintofscience</a> <span style="float: right">par <a href="http://twitter.com/mazenovi">@mazenovi</a> </span> </h4> <aside class="notes"> <ul> <li>Vincent Mazenod aka mazenovi <ul> <li>20 ans de développement pour le web</li> <li>dont 17 au CNRS</li> <li>expert SSI à la délégation régionale Auvergne-Rhône-Alpes du CNRS (DR7) depuis 10 ans</li> <li>concerné par la vie privée depuis le début</li> <li>je parle histoire de l'informatique, éthique de l'informatique et futurologie après quelques pintes</li> </ul> </li> <li>Surfez couvert ... <ul> <li>sujet banal pour image de couverture banale <ul> <li>marronier digital</li> <li>saucisson numérique</li> </ul> </li> <li> ce soir réponse radicale et argumentée, accrochez vous à vos claviers </li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/n00b.jpg"> <h2 class="trsp">... alors qu'on ne comprend rien à l'informatique?</h2> <aside class="notes"> <ul> <li>ce n'est pas une présentation pour les nuls</li> <li>pas de conseils sur les mot de passes, JP Pernaud fait ca très bien</li> <li>pour ne pas avoir de problèmes: <ul> <li>vérifier votre barre d'url souvent</li> <li>Pas de streaming / téléchargement</li> <li>Pas de jeu en ligne</li> <li>Pas de porn</li> </ul> </li> <li>si vous êtes persuadés d'être nul ...</li> </ul> </aside> </section> <section data-background-image="images/tor/minitel.gif"> <h1 class="trsp">ne surfez pas!!</h1> <aside class="notes"> <ul> <li>Si on y comprend vraiment rien <ul> <li>Mieux vaut ne pas</li> </ul> </li> <li>Si vous voulez comprendre <ul> <li>Poser des questions : c'est le moment</li> <li>Aucune question n'est idiote: peu de gens savent</li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/go.gif"> <h2 class="trsp">ou comprenez les enjeux!</h2> <aside class="notes"> <ul> <li>On ne parle pas ici des enjeux de madame michu</li> <li>On parle de la protection des sources sur Internet</li> <li>hastag: investigation, journalisme, liberté d'expression, leak etc ... </li> </ul> </aside> </section> <section> <h2>menaces</h2> <ul> <li>états / renseignements</li> <li>plateformes (GAFAM)</li> <li>attaques ciblées</li> </ul> <aside class="notes"> <ul> <li>vous connaissez Edward Snowden? <ul> <li>la NSA</li> <li>les plateformes qui collaborent avec la NSA (révélations PRISM)</li> <li>éventuellement des pirates souhaitant mettre la main sur les outils de la NSA avant qu'ils soient connus</li> </ul> </li> <li>TOUS LES COUPS SONT PERMIS</li> </ul> </aside> </section> <section> <h2>se protéger</h2> <ul> <li>confidentialité</li> <li>authenticité</li> <li>anonymat</li> </ul> <aside class="notes"> <ul> <li>confidentialité: le message n'est lu QUE par le destinataire</li> <li>authenticité: <ul> <li>le message est lu par le bon destinataire</li> <li>l'identité de l'émetteur est éventuellement vérifiable</li> </ul> </li> <li> anonymat: <ul> <li>l'IP (de votre box, ou mobile) notamment est géolocalisable et tracable</li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/en-clair.png" data-background-color="white" data-background-size="70%"> <h4>confidentialité / en clair par défaut</h4> <aside class="notes"> <ul> <li>le FAI <ul> <li>attribue l'IP</li> <li> fournit les DNS (correspondance nom de domaine adresse IP du serveur à consulter). Requête transparente mais cruciale comme on le verra plus tard </li> <li>voit tout le traffic. C'est le centre de tri des cartes postales</li> <li>plusieurs FAI sont en général impliqués dans une communication</li> </ul> </li> <li> les plateformes <ul> <li>s'il partage un fichier via dropbox</li> <li>une pièce jointe via gmail</li> </ul> </li> <li>la NSA collabore avec les FAI et les plateformes</li> <li>Snowden balance gros: il doit se protéger de tout le monde</li> <li>comment s'en sortir?</li> </ul> </aside> </section> <section data-background-image="images/crypto/scytale.png" data-background-size="50%"> <h4>confidentialité / chiffrement</h4> <aside class="notes"> <ul> <li>vieux comme le monde</li> <li>le scytale</li> <li>on fait plus robuste maintenant (attaque par analyse)</li> <li>la sécurité doit reposer sur le secret de la clé, pas sur le secret de l'algorithme <ul> <li>le fonctionnement des algo de chiffrement est typiquement connu</li> </ul> </li> <li> chiffrer, déchiffrer, décrypter, crypter, chiffrage</li> </ul> </aside> </section> <section data-background-image="images/tor/chiffrement-symetrique.png" data-background-color="white" data-background-size="70%"> <h4>confidentialité / chiffrement symétrique</h4> <aside class="notes"> <ul> <li>on a un problème pour partager la clé <ul> <li>peut marcher si on se cache des FAI (IRL?)</li> </ul> </li> <li>pas de scellé (authenticité) <ul> <li>on sait juste que c'est quelqu'un qui partage notre sercret</li> </ul> </li> <li>la NSA doit décrypter : ca nécessitebeaucoup de calcul</li> <li>google aussi dans le contexte Gmail, mais pas forcément dans le contexte pub ou ananlyse de traffic (techniquement parlant)</li> <li>Souvenez vous on parle d'Edward Snowden!</li> </ul> </aside> </section> <section data-background-image="images/tor/chiffrement-asymetrique-chiffrement.png" data-background-color="white" data-background-size="70%"> <h4>confidentialité / chiffrement asymétrique</h4> <aside class="notes"> <ul> <li>depuis les 70s</li> <li>tout s'appelle clé ... désolé</li> <li>1 clé publique présentée dans un certificat publique <ul> <li>sur le site du guardian, carte de visite, IRL, etc ...</li> <li>permet d'obtenir un cadenas pour fermer sans la clé</li> <li>seul celui qui a la clé peut ouvrir</li> <li>pas d'échange de clé</li> </ul> </li> <li>c'est des maths <ul> <li>tout ce qui est chiffré avec la clé publique est déchiffrable avec la clé privée</li> <li>tout ce qui est chiffré avec la clé privée est déchiffrable avec la clé publique <ul> <li>c'est la signature</li> </ul> </li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/chiffrement-asymetrique-signature.png" data-background-color="white" data-background-size="70%"> <h4>authenticité / signature</h4> <aside class="notes"> <ul> <li>la clé privée agit ici comme un sceau</li> <li>elle permet de sceller l'enveloppe avec la clé privée</li> <li>le sceau est vérifiable par tous</li> <li>toute la confiance repose sur la légitimité des certificats <ul> <li>approche PGP : on échange les clés d'humain à humain <ul> <li>système décentralisé, chacun se créée sa toile de confiance</li> </ul> </li> <li>approche X509 : des autorités délivrent les certificats <ul> <li>repose essentiellement sur le nom de domaine pour TLS</li> </ul> </li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/pki.png" data-background-color="white" data-background-size="70%"> <h4>authenticité / PKI</h4> <aside class="notes"> <ul> <li>Autorité de certification (CA)</li> <li>système de gestion de clé publique / privée (ou de chiffrement asymétrique) <ul> <li>pour humains, serveurs, organisation</li> </ul> </li> <li>vérifie la légitimité lors de l'attribution</li> <li>gère les révocations, la distribution, le renouvellement etc ...</li> <li>tout repose sur ces autorités mais elles sont loin d'être irréprochable</li> </ul> </aside> </section> <section data-background-image="images/tor/known-good-signers.png" data-background-size="50%"> <h4>authenticité / CA</h4> <aside class="notes"> <ul> <li>le navigateur est configuré avec les autorités de confiance</li> <li>en pratique les autorités qui paient</li> <li>on ne les connaît pas toutes</li> </ul> </aside> </section> <section> <h2><strike>SSL</strike> TLS</h2> <ul> <li class="c"> échange d'une clé de chiffrement symétirque <ul> <li class="c">via un système de chiffrement asymétrique</li> </ul> </li> <li class="c">autorités de confiance dans le navigateur</li> cadenas vert </ul> <img src="images/tor/green-bar-web-browser.jpg" /> <div class="trsp" style="margin-top: 2%">le FAI voit toujours quelle IP consulte quelle IP :/</div> <aside class="notes"> <ul> <li>mais il y a pire que le leake de l'IP: même le nom de domaine n'est pas préservé</li> </ul> </aside> </section> <section data-background-image="images/tor/dns.jpg" data-background-color="white" data-background-size="55%"> <h2>anonymat / leak DNS</h2> <aside class="notes"> <ul> <li>trahit la consultation de tel nom de domaine pour telle IP</li> <li>typiquement les données recueilli par les boites noires de la loi renseignement</li> </ul> </aside> </section> <section data-background-image="images/tor/tracking.png" data-background-color="#F8F2E4" data-background-size="72%"> <h2>anonymat / tracking</h2> <div style="margin-top: 45%;font-size: 12px">source: <a href="https://c-marketing.eu/zoom-sur-les-cookies/">https://c-marketing.eu/zoom-sur-les-cookies/</a></div> <div style="margin-top: 5%"><a href="https://panopticlick.eff.org/">panopticlick.eff.org</a></div> <aside class="notes"> <ul> <li>des régies publicitaires (Google adSens)</li> <li>des analyseur de traffic (Goole Analytics)</li> <li>agit au sein de l'échange protégé <ul> <li>recoupement d'utilisateur par cookie</li> <li>recoupement d'utilisateur par signature de navigateur <ul> <li>prévient la suppression des cookies</li> <li>adblocker peut être payé pour laisser passer telle ou telle régies</li> </ul> </li> <li>même en navigation privé google peut lier le traffic à un utilisateur <ul> <li>ne pas être authentifié sur gmail ou facebook n'est pas un obstacle</li> <li>navigation mode privée permet juste de préserver l'historique</li> </ul> </li> <li>javascript est la faille, le désactiver est une bonne idée pour la privacy <ul> <li>une mauvaise idée pour le confort</li> </ul> </li> </ul> </li> </ul> </aside> </section> <section> <h2>se protéger avec <strike>SSL</strike> TLS</h2> <ul> <li>confidentialité <strong class="green">✓</strong></li> <li>authenticité <strong class="green">✓</strong></li> <li>anonymat <strong class="red">𐄂</strong></li> </ul> <div class="trsp" style="margin-top: 25%">idéal pour le e-commerce ;)</div> <aside class="notes"> <ul> <li> BTW les gesticulations sécuritaires à chaque attentat sur la remise en cause du chiffrement n'ont pas de sens <ul> <li>pas de chiffrement = pas de confiance = pas de e-commerce</li> <li>la première chose qu'on a chiffré c'est les numéro de CB (LCEN 2004)</li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/tor.png" data-background-size="55%"> <h2>Tor</h2> <ul class="trsp c"> <li class="c">"un" darknet parmi d'autres</li> <li class="c">"le" <strong>darkweb</strong>: un des services de <strong>Tor</strong></li> <li class="c">surcouche réseau <ul> <li class="c">s'appuie sur le web <em>"classique"</em></li> </ul> </li> <li class="c">projet de l'armée américaine (mi-1990)</li> <li class="c">code en open source depuis 2004</li> <li class="c">sponsorisée par l'<a href="https://www.eff.org/fr">EFF</a></li> <li class="c">organisation à but non lucratif</li> <li class="c">contournement de la censure</li> <li class="c">~2 375 000 utilisateurs par jour</li> </ul> <aside class="notes"> <ul> <li>faire une recherche sur TOR c'est déjà être fiché par la NSA <ul> <li>peut être même en venant à cette talk ;)</li> <li>réellement efficace</li> </ul> </li> <li>utilisé par Snowden, Wikileaks, panama papers etc ... <ul> <li> mais pas n'importe comment </li> </ul> </li> <li>utilisé par les dissidents chinois etc ... où le web est surveillé / censuré <ul> <li>c'est pourquoi facebook par exemple est sur Tor</li> </ul> </li> </ul> </aside> </section> <section> <ul class="trsp c"> <li class="c"> <a href="https://www.torproject.org/projects/torbrowser.html.en">cross platform</a> <i class="fa fa-linux" aria-hidden="true"></i> <i class="fa fa-windows" aria-hidden="true"></i> <i class="fa fa-apple" aria-hidden="true"></i> <i class="fa fa-android" aria-hidden="true"></i> </li> <li class="c"><i class="fa fa-firefox" aria-hidden="true"></i> Firefox + proxy tor intégré</li> <li class="c"> <i class="fa fa-firefox" aria-hidden="true"></i> add ons</a> <ul> <li><a href="https://addons.mozilla.org/fr/firefox/addon/noscript/">NoScript</li> <li><a href="https://www.eff.org/fr/https-everywhere"> HTTPS everywhere</li> </ul> </li> <li class="c"> <a href="https://tails.boum.org/">Tails (OS live)</a> </li> </ul> <img src="images/tor/tor-browser.jpg" /> <aside class="notes"> <ul> <li>Tails ajoute de la sécurité au niveau de l'OS <ul> <li>linux opensource VS windows ou mac os privateur</li> <li>système live = système amnésique <ul> <li>ne possède aucune donnée</li> </ul> </li> <li>MEME SI personnalisation d'une partition de données chiffrées possible</li> </ul> </li> <li>portable <ul> <li>se démarre avec une clé usb à partir de n'importe quelle machine</li> <li>environnement utilisable sur n'importe quelle machine sans laisser de trace</lI> <li>kit de survie pour journaliste d'investigation</li> </ul> </li> <li>toutes les applications passent par Tor <ul> <li>IM, mail, etc ... ce qui n'est pas le cas avec Tor Browser</li> </ul> </li> <li>utiliser Tor sur son mobile ou sur windows est ce une bonne idée?</li> </ul> </aside> </section> <section data-background-image="images/tor/tor-circuit.png" data-background-size="contain" data-background-position="bottom"> <h3 class="trsp">Tor circuit</h3> <aside class="notes"> <ul> <li>repose sur des noeuds internet spéciaux appelés neouds Tor <ul> <li>on chiffre de proche en proche <ul> <li>chaque noeud ne connait que son prédécesseur et son successeur</li> <li>on utilise Trois nouds Tor</li> <li>on cache donc le client au serveur</li> </ul> </li> <li> c'est le noeud de sortie qui effectue la requête DNS <ul> <li>peut voir le contenu de la requête</li> </ul> </li> <li>le noeud d'entrée l'IP du client</li> </ul> </li> <li>anonymat préservé <ul> <li>sauf sur le dernier mètre <ul> <li>la NSA peut avoir des infos</li> </ul> </li> <li>sauf si on maîtrise tout le circuit Tor <ul> <li>le projet émane de l'armée américaine</li> <li>opensourcing du renseignement</li> </ul> </li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/Tor-Encryption.jpg" data-background-size="contain" data-background-color="#eeeeee"> <aside class="notes"> <ul> <li>le schéma est faux mais beau</li> <li>les trois noeuds par les quels passent la communication <ul> <li>sont choisis aléatoirement</li> <li>renouvelés régulièrement</li> </ul> </li> <li>réduit la probabilité qu'un attaquant maîtrise tous les cricuits</li> <li>ce n'est pas 100% efficace <ul> <li>ca maximise la probabilité de l'être</li> </ul> </li> </ul> </aside> </section> <section> <h2>se protéger avec Tor sur le web</h2> <ul> <li>confidentialité <strong class="red">𐄂</strong></li> <li>authenticité <strong class="red">𐄂</strong></li> <li>anonymat <strong class="green">✓</strong></li> </ul> </section> <section> <h2>se protéger avec Tor + TLS (https) sur le web</h2> <ul> <li>confidentialité <strong class="green">✓</strong></li> <li>authenticité <strong class="green">✓</strong></li> <li>anonymat <strong class="green">✓</strong></li> </ul> <aside class="notes"> <ul> <li>sécuristation du dernier mètre</li> <li>authenticité du serveur via TLS et la PKI associée</li> </ul> </aside> </section> <section data-background-image="images/tor/hs.png" data-background-size="contain" data-background-color="#e1e1e1"> <aside class="notes"> <ul> <li>service caché = hidden service</li> <li>l'idée est de mettre 2 circuits Tor bout à bout <ul> <li>un annuaire de service cachés joue le rôle d'entremetteur</li> </ul> </li> <li>un point de rendez vous est fixé <ul> <li>le client ne connait pas l'IP du serveur</li> <li>le serveur ne connait pas l'IP du client</li> <li>le HSDir ne connait ni l'IP du client ni l'IP du serveur</li> <li>le Point de rendez vous ne connait ni l'IP du client ni l'IP du serveur</li> </ul> </li> </ul> </aside> </section> <section> <h2>se protéger avec des services cachés Tor (.onion)</h2> <ul> <li>confidentialité <strong class="green">✓</strong></li> <li>authenticité <strong class="green">✓</strong></li> <li>anonymat <strong class="green">✓</strong></li> <li><strong>anonymat du serveur</strong> <strong class="green">✓</strong></li> </ul> <div class="trsp" style="margin-top: 15%">idéal pour la liberté d'expression ;)</div> </section> <section data-background-image="images/tor/whistleblowers.jpg"> <aside class="notes"> <ul> <li>Edward Snowden</li> <li>Julian Assange - wikileaks: panama papers, cable diplomatique - personnalité discutable</li> <li>Bradley / Chelsea Manning</li> </ul> </aside> </section> <section> <h2>se protéger avec Tor (.onion)</h2> <ul> <li>confidentialité <strong class="green">✓</strong></li> <li>authenticité <strong class="green">✓</strong></li> <li>anonymat <strong class="green">✓</strong></li> <li><strong>anonymat du serveur</strong> <strong class="green">✓</strong></li> </ul> <div class="trsp" style="margin-top: 15%">idéal pour la cybercriminalité ;)</div> <aside class="notes"> <ul> <li>Tout ce qui est usuellement interdit est faisable <ul> <li>drogues: beaucoup</li> <li> armes: peu, beaucoup de scam</li> <li>pédopornographie: bien cachée, car ne fait pas l'unanimité sur Tor comme ailleurs</li> </ul> </li> <li>ces sujets existent avant Tor et existeront après</li> </aside> </section> <section data-background-image="images/tor/cybercrime.gif"> <aside class="notes"> <ul> <li>acheter de la drogue, avec des crypto monnaie <ul> <li>BTC ou mieux monero pour l'anonymat</li> <li>une autre présentation pour Pot Of Science peut etre;)</li> </ul> </li> </ul> </aside> </section> <section data-background-image="images/tor/phil-zimmermann.jpg"> <aside class="notes"> <ul> <li>Problème fondamental qui doit amener à la réflexion et non à l'action</li> <li>Posé dès 1991 par Phil Zimmermann auteur de PGP et de la première crypto war</li> </ul> </aside> </section> <section data-background-image="images/tor/applause.gif"> <div class="trsp"> <h1>Merci</h1> <h2>Questions?</h2> </div> </section> </section> </div> </div> <script src="../../node_modules/reveal.js/lib/js/head.min.js"></script> <script src="../../node_modules/reveal.js/js/reveal.js"></script> <script> // More info about config & dependencies: // - https://github.com/hakimel/reveal.js#configuration // - https://github.com/hakimel/reveal.js#dependencies Reveal.initialize({ controls: true, progress: true, history: true, center: false, dependencies: [ { src: '../../node_modules/reveal.js/plugin/markdown/marked.js' }, { src: '../../node_modules/reveal.js/plugin/markdown/markdown.js' }, { src: '../../node_modules/reveal.js/plugin/notes/notes.js', async: true }, { src: '../../node_modules/reveal.js/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } } ] }); </script> </body> </html>