Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • master
  • prez
2 results

Target

Select target project
  • vimazeno/blog.limos.fr
  • matrossevi/blog.limos.fr
  • borlonjo/blog.limos.fr
3 results
Select Git revision
  • master
1 result
Show changes
Showing
with 2014 additions and 415 deletions
<section data-background-image="https://media.giphy.com/media/UqxVRm1IaaIGk/giphy.gif">
<h2>Surfez couvert?</h2>
</section>
## Comment faire?
## Quand on y connaît rien en informatique ...
## Ne surfez pas!
## Merci!
### Questions?
## Sinon pour comprendre les enjeux ...
## Une brève histoire du secret et de la vie privée
## Comment gardait on les secrets autrefois
* on ne disait pas
* on ne faisait rien qui pouvait trahir qu'on savait
* on cachait
* on obfusquait
* on séquestrait
* on contrôlait ceux qui savent
![coffre enterré / stégano]
![Bâton de plutarque](images/crypto/scytale.png)
![Coffre](https://pxhere.com/fr/photo/566303)
https://commons.wikimedia.org/wiki/File:Enigma.jpg?uselang=fr
historique des usages et non des théories
https://commons.wikimedia.org/wiki/File:Skytale.png
## Puis l'air du numérique arriva
Au début la ROM / RAM
problème avec la RAM
Apple II
## chiffrement symétrique
https://pixabay.com/fr/s%C3%A9curit%C3%A9-des-donn%C3%A9es-445154/
utilisé depuis l'antiquité
le secret est sur la disquette et éventuellement dans la RAM (Forensic)
sécurisé les périphériques externes
toujours valable pour les clés USB
## PC avec disque dur
fichiers stockés
sécurité du disque dur
un disque dur est accessible en lecture écriture à quiconque le démonte et l'ouvre à partir d'un autre système
partition chiffrée ou support amovible chiffré
fichiers temporaires
le disque entier devrait être chiffré
la RAM reste un problème
## le réseau / l'Internet
tout passe en clair (encore aujourd'hui même si ça s'améliore de jour en jour)
beaucoup de communication point à point le chiffrement symétrique différents problèmes
comment communiquer la clé secrète permettant de lire le message?
Questions subsidiaire: comment s'assurer de l'authenticité du message
* qui l'a écrit?
* a t il était modifié par quelqu'un d'autre?
* comment dois je procéder pour partager un message avec n client?
## protéger les échanges
### chiffrement asymétrique (à clé publique)
50 Claude Shannon
70 Cryptogie moderne
91 PGP
Phil Zimmermann
cryptowars
https://yahooeysblog.files.wordpress.com/2016/04/phil-zimmermann-outlaws.jpg
## nouvel enjeu de l'OS
Que fait mon système d'exploitation?
Que dit il sur moi dans mon dos?
mon système est chiffré mais pourquoi windows ne l'envoie à la NSA?
- whistle blower
- l'un de intérêt de l'open sour ce et surtout du logiciel libre
## logiciel libre
je ne relis pas le code mais je sais que cette relecture a été fait par une commauté
## le web
bien que décentralisé au départ il concentre l'activité du réseau autour de point sépciaux les serveurs ou sites web?
pose de nouveau problème
comment chiffrer les informations échnagées entre un utilisateurs et un site, voir de site à site
si vous pensez que ce n'est pas important pensez à votre n° de CB qui tarnsite sur les sites de e-commerce
## SSL / TLS
Autorité de certification
## le web2
émergence du profiling et du modèle de publicité (fait suite à la première bulle)
les échnages sont sécurisés mùais les données échangées le sont parfois à l'insu de l'utilisateur et pour de finalité qui lui échappe
- profiling repéré quel utilisateur consulte quel page à quel férquence accéder à partir de quelle requête basiquement
## les smartphones
cumul tous les problèmessage
deivce à chiffrer (perdable)
et largement profile
## le coud
## service souverain
## bloqueur en tout genre
## écoute des tuyaux
## Tor, Bitcoin messagerie chiffrée
## over the world
## Avez vous quelque chose à cacher
## intelligence économique
![intelligence économique](images/jnarac/ie/ie.jpg "intelligence économique")<!-- .element: width="75%" -->
## Motivations
* Espionnage d'état
* Sécurité d'état
* Intelligence économique
* Argent (chantage/ranson/opération commanditée)
* (H)ac(k)tivisme
* Goût du challenge
* Curiosité / ennui (script kiddies)
* Vengeance
* Pentesting (à titre préventif)
## Social engineering
![chaperon rouge](images/jnarac/ie/chaperon_rouge.jpg "chaperon rouge")<!-- .element: width="45%" -->
## Social engineering
![password facebook](images/jnarac/ie/passwordfacebook.png "password facebook")<!-- .element: width="80%" -->
## Google Fu
![Google Fu](images/jnarac/ie/googlefu.jpg "Google Fu")<!-- .element: width="45%" -->
[Google Hacking Database (GHDB)](https://www.exploit-db.com/google-hacking-database/)
![Google Fu](images/jnarac/ie/google-fu.png "Google Fu")<!-- .element: width="50%" -->
## Shodan HQ
![Shodan HQ](images/jnarac/ie/shodan-hq.png)<!-- .element width="50%" -->
* Découverte de l'internet ...
* en mode combinatoire
* en analysant les bannières des services
* Prise en main rapide
* [Shodan for penetration testers](https://www.defcon.org/images/defcon-18/dc-18-presentations/Schearer/DEFCON-18-Schearer-SHODAN.pdf)
* [Les dernières requêtes pour l'inspiration](http://www.shodanhq.com/browse/recent)
## IE offensive (pentest)
![Metasploit](images/jnarac/ie/msf.png "Metasploit")<!-- .element width="40%" -->
![Armitage](images/jnarac/ie/armitage.png)<!-- .element width="40%" style="float: right; margin-left: 20px" -->
![Beef](images/jnarac/ie/beef.png)<!-- .element width="40%" -->
![Stuxnet](images/jnarac/ie/stuxnet.jpg)<!-- .element width="40%" style="float: right; margin-left: 20px" -->
## <i class="fa fa-ambulance" aria-hidden="true"></i> Piraterie
* Choisir de [bons mots de passe](passwords.html)
* Mettre à jour
* son système
* ses logiciels
* Limiter les informations en ligne
* Sécuriser les systèmes d'information
* Sensibiliser les acteurs des systèmes d'information
## Je n'ai rien à cacher ...
![WC](images/jnarac/index/wc.jpg)
## ... donc rien à craindre
![Nothing to hide nothing to fear](images/jnarac/index/nothing_to_hide_nothing_to_fear.jpg)<!-- .element style="width: 30%" -->
![Elf Surveillance Santa Camera](images/jnarac/index/Elf_Surveillance_Santa_Camera.png)
![Edward Snowden](images/jnarac/index/twitt-snowden.png)
## RGPD
![RGPD](images/jnarac/law/gdpr.jpg)
## RGPD
Règlement général sur la protection des données [UE]
* [Comprendre le règlement européen](https://www.cnil.fr/fr/comprendre-le-reglement-europeen)
* [Règlement européen sur la protection des données : ce qui change pour les professionnels](https://www.cnil.fr/fr/reglement-europeen-sur-la-protection-des-donnees-ce-qui-change-pour-les-professionnels)
* [**07 octobre 2015** - Invalidation du « safe harbor » par la CJUE : une décision clé pour la protection des données](https://www.cnil.fr/fr/invalidation-du-safe-harbor-par-la-cour-de-justice-de-lunion-europeenne-une-decision-cle-pour-la-0)
* En France la CNIL devient autorité de contrôle
## Périmètre
* Prise de position
* Réglement européen
* envigueur le 25 mai 2018
* Dans tous les états membres de l'UE
* <strike>Déclaration</strike>
* responsabilité
* démonstration permanente du maintien de la conformité
## Périmètre
* Tout service ou sous traitant (y compris hors UE) traitant des données de résidents de l'UE
* Entreprises
* Associations
* Organismes publics
* Sous traitants
## Objectifs
* Renforcer la transparence
* Quelles données sont collectées?
* Dans quels buts?
* Pour combien de temps?
## Objectifs
* Faciliter l'exercice des droits
* droit à la rectification
* droit à la portabilité
* récupération
* communication à un autre traitement
## Objectifs
* Faciliter l'exercice des droits
* droit à l'oubli
* suppression de données personnelles
* dès qu'elles ne sont plus nécessaires au traitement
* dès que le consentement de l'utilisateur a été retiré
* dès que la personne s'y oppose
## Objectifs
* Crédibiliser la régulation
* Réclamation auprès de l'autorité de contrôle
* Droit de recours contre le responsable du traitement ou un sous traitant
* Actions collectives ou personnelles
* Sanctions
* 4% du chiffre d'affaire annuel mondial
* 20 000 000 €
## Objectifs
* Responsabiliser les acteurs traitant des données
* Obligation d'information en cas de violation de données à caractère personnel
* autorité de contrôle
* La personne concernée
## Principes
* Accountability
* tous responsables
* tous auditables
* <strike>Déclaration CNIL</strike>
* Privacy By Design
* Portection des données pris en compte du début
* Security By Default
* Mesures de sécurité nécessaires
* Détection de compromission
## Principes
* DPO (Data Protection Officer)
* conformité RGPD
* Point de contact avec les autorités
* Analyse d'impact (PIA)
* [un logiciel pour réaliser son analyse d’impact sur la protection des données (PIA)](https://www.cnil.fr/fr/rgpd-un-logiciel-pour-realiser-son-analyse-dimpact-sur-la-protection-des-donnees-pia)
## [RPGD : en 6 étapes (CNIL)](https://www.cnil.fr/fr/principes-cles/rgpd-se-preparer-en-6-etapes)
1. Désigner un pilote (DPO/DPD)
2. Cartographier
3. Prioriser
4. Gérer les risques
5. Organiser
6. Documenter
### Prouver la conformité = Avoir la documentation nécessaire
## Transfert des données hors UE
* Vérifier que le pays vers lequel vous transférez les données est reconnu comme adéquat par la Commission européenne
* Dans le cas contraire, encadrez vos transferts
## Données sensibles
* origines raciales ou ethniques
* opinions politiques, philosophiques ou religieuses
* appartenance syndicale
* santé
* orientation sexuelle
* génétiques ou biométriques
* infraction ou de condamnation pénale
* sur les mineurs
Soumises à autorisation de la CNIL
## dispositifs spéciaux
* Recherche publique
* [Protection du Potentiel Scientifique et Technique de la nation](http://fr.wikipedia.org/wiki/Protection_du_potentiel_scientifique_et_technique_de_la_nation_%28PPST%29)
* Données de santé
* [ASIP santé - L'agence française de la santé numérique](http://esante.gouv.fr/)
* Etablissements de crédit
* [Garanties spécifiques de sécurité](http://www.fbf.fr/fr/contexte-reglementaire-international/cadre-juridique/les-principaux-textes-regissant-le-secteur-bancaire-francais)
## SSI
![SSI](images/jnarac/ssi/vigipirate.jpg "SSI")<!-- .element width="40%" -->
### Problématique nationale
#### [La défense en profondeur](http://circulaire.legifrance.gouv.fr/pdf/2009/04/cir_2014.pdf)
![fortification à la Vauban](images/jnarac/ie/Vauban_Fortifications.jpg "fortification à la Vauban")<!-- .element width="45%" style="float: right;margin: 15px;"-->
exploiter plusieurs techniques de sécurité afin de réduire le risque lorsqu'un composant particulier de sécurité est compromis ou défaillant
<small>Sébastien Le Prestre de Vauban</small>
## Stratégie de la défense en profondeur
* n'évite pas l'attaque
* ralentit l'attaquant
* chacun est un maillon des chaînes fonctionnelles Sécurité Défense & SSI et doit
<br>
### Sécurité = réduire le risque = rendre les attaques coûteuses
### Stratégie de la défense en profondeur
Chaque maillon est reponsable
* de l'analyse des risques inhérents à son périmètre pour mieux les maîtriser
* de l'anticipation & de la prévention des accidents et des actes de malveillance
* de l'amélioration continuelle de la sécurisation de son périmètre
* le risque 0 n'existe pas
* la sécurité peut toujours être améliorée
## la chaîne Sécurité Défense
![la chaîne Sécurité Défense](images/jnarac/ie/chaine_fonctionnelle.png "la chaîne Sécurité Défense")<!-- .element width="80%" -->
## la chaîne SSI
![Organisation nationale](images/jnarac/ie/organisation_nationale.png "Organisation nationale")<!-- .element width="45%" -->
## l'ANSSI
[![ANSSI](images/jnarac/ie/Anssi.png "ANSSI")](http://www.ssi.gouv.fr/)
## l'ANSSI
* force d'intervention (CERT-FR) & de prévention
* contribue à l'élaboration de la stratégie nationale et européenne SSI
* [EBIOS Expression des Besoins et Identification des Objectifs de Sécurité](https://www.ssi.gouv.fr/guide/ebios-2010-expression-des-besoins-et-identification-des-objectifs-de-securite/)
* [Livre blanc sur la sécurité et la défense nationale](http://www.livreblancdefenseetsecurite.gouv.fr/)
* renforcé par la LPM
* protège 218 [OIV (Opérateurs d'Importance Vitale)](http://fr.wikipedia.org/wiki/Op%C3%A9rateur_d'importance_vitale) en France
#### ... d'importance Vitale
[SAIV (Secteur d'Activités d'Importance Vitale)](http://www.sgdsn.gouv.fr/site_rubrique70.html) - selon article R1332-2 du Code de la défense français
* **Secteurs étatiques**: activités civiles de l’Etat, activités militaires de l’Etat, activités judiciaires
* **Secteurs de la protection des citoyens**: santé, gestion de l'eau, alimentation
* **Secteurs de la vie économique et sociale de la nation**: énergie, communication, électronique, audiovisuel et information (les quatre représentent un secteur), transports, finances, industrie
* La liste exhaustives est secret défense
## Surveillance
!["surveillance"](images/jnarac/surveillance/obama-prism-raccroche.jpg "surveillance") <!-- .element: width="70%" -->
Note:
- Barack
- snowden juin 2013
- NSA
- Prism
- grand retour en arrière au moins en facade
- bad for business
## Chine
![Chines cop](images/jnarac/surveillance/chinese_cop.jpg)<!-- .element width="85%" -->
[<small>Face Recognition Glasses Augment China’s Railway Cops</small>](http://www.sixthtone.com/news/1001676/face-recognition-glasses-augment-chinas-railway-cops)
[<small>La Chine met en place un système de notation de ses citoyens pour 2020</small>](http://www.lefigaro.fr/secteur/high-tech/2017/12/27/32001-20171227ARTFIG00197-la-chine-met-en-place-un-systeme-de-notation-de-ses-citoyens-pour-2020.php)
## whistle blowers
![Whistle blowers](images/jnarac/surveillance/whistle_blower.jpeg)<!-- .element width="85%" -->
Note:
- cypher punk
- libertarien
- le renseignement est il à combattre?
## Surveillance En France
!["surveillance"](images/jnarac/surveillance/valls-prism-raccroche.jpg "surveillance")<!-- .element: width="70%" -->
Note:
- France
- 7 janvier 2015 (Je suis Charlie)
- Je suis sur écoute
- Loi sur le renseignement
- qui abroge un cadre légal existant
- LIL
- le business en fera les frais
- la démocratie aussi
## LIL
[!["SAFARI ou la chasse aux Français"](images/jnarac/surveillance/safari.jpg "SAFARI ou la chasse aux Français")](http://fr.wikipedia.org/wiki/Syst%C3%A8me_automatis%C3%A9_pour_les_fichiers_administratifs_et_le_r%C3%A9pertoire_des_individus)
[!["cnil"](images/jnarac/surveillance/cnil.jpg "cnil")](http://www.cnil.fr/)
#### « Quand on consulte des images de djihadistes, on est un djihadiste. »
![« Quand on consulte des images de djihadistes, on est un djihadiste. »](images/jnarac/surveillance/sarko.jpg "« Quand on consulte des images de djihadistes, on est un djihadiste. »")<!-- .element width="50%" -->
![« Merde je suis Emma Watson nue. »](images/jnarac/surveillance/emma-watson.png "« Merde je suis Emma Watson nue. »")<!-- .element width="50%" -->
#### Mégafichier TES
![Méga fichiers TES](images/jnarac/surveillance/megafichier_TES.jpg)<!-- .element width="25%" -->
* [<i class="fa fa-wikipedia-w" aria-hidden="true"></i> Fichage en France](https://fr.wikipedia.org/wiki/Fichage_en_France)
* [Le «fichier des gens honnêtes»](http://www.slate.fr/story/138356/saga-generalisation-fichier-des-gens-honnetes)
* [Le «mégafichier» étendu au pas de charge](http://www.liberation.fr/futurs/2017/02/21/le-megafichier-etendu-au-pas-de-charge_1549968)
## Internet
![Hippies](images/jnarac/www/hippies-60s.jpg)<!-- .element width="60%" -->
## Internet
* __efficient__: les messages arrivent toujours
* __résiliant__: trouve d'autres chemin si besoin
* __projet politique__: modèle de société mondiale
* __décentralisé__: personne ne le contrôle réellement
* __ouvert__: très facile de s'y connecter
* __nativement non sécurisé__: tout cricule en claire
* __transmission par paquet__: via le protocol TCP / IP
## le web
* n'est pas Internet, mais fonctionne grâce à l'Internet
* n'est ni Google, ni facebook
* encore moins chrome ou firefox
* inventé par [<i class="fa fa-wikipedia-w" aria-hidden="true"></i> Tim Berners Lee](https://fr.wikipedia.org/wiki/Tim_Berners-Lee) début 90
* il est conçu comme une mine d'informations
* pas comme un lieu de transactions économiques
* tout est ouvert
* [<i class="fa fa-wikipedia-w" aria-hidden="true"></i> Wikipédia](https://wikipedia.org) incarne les concepts fondamentaux du web
## le web
* repose sur le parcours discursif
* lien hypertexte
* [<i class="fa fa-wikipedia-w" aria-hidden="true"></i> URL (Uniform Resource locator)](https://fr.wikipedia.org/wiki/Uniform_Resource_Locator)
<br />
<div style="text-align: center">
![url](images/jnarac/www/url.jpg "url")<!-- .element: width="55%" -->
</div>
* supporté par un protocole [HTTP](../1337/http.html)
## le web n'oublie jamais
[![wayback machine](images/jnarac/www/waybackmachine.png "Waybackmachine")](http://web.archive.org/web/20020331020421/http://vmazenod.free.fr/)
Note:
- waybackmachine vous connaissez?
- le tout est d'assumer ses coupes de cheveux
- et ses propos antérieurs, on change, l'environnement change
## <i class="fa fa-ambulance" aria-hidden="true"></i> le web n'oublie jamais
* Désactiver les partages automatiques
* de localisation
* de photos
* Réfléchir avant de mettre quoique ce soit en ligne
* photos
* partages d'information
* Se protéger et protéger les autres
* Enfants, famille, amis, collègue, employeurs
## le web est résiliant
[![Effet Streisand](images/jnarac/www/Streisand_Estate.jpg "Effect Streisand")](http://fr.wikipedia.org/wiki/Effet_Streisand)
Note:
- effet Streisand en 2003
- poursuite du photographe diffuseur
- 420 000 visistes le mois suivant
- l'image sur wikipedia en Creative common
- ce qu'on essaie de supprimer peut rester
## <i class="fa fa-ambulance" aria-hidden="true"></i> le web est résiliant
* Faire valoir [son droit au déréférencement](https://www.cnil.fr/fr/le-droit-au-dereferencement)
* suppression des résultats des moteurs de recherche
* ne supprime pas l'information du web
* [Google Search Console (ex webmaster tools)](https://www.google.com/webmasters/tools/home?hl=fr&pli=1)
* si vous avez "la main sur la page"
# Mots de passe
# <i class="fa fa-user-secret" aria-hidden="true"></i>
# <i class="fa fa-user-secret"></i>
## Les mots de passes
### <i class="fa-solid fa-trophy"></i> Les mots de passes
1. ça ne se prête pas
2. ça ne se laisse pas traîner à la vue de tous
......@@ -15,204 +15,113 @@
8. mieux vaut les avoir avec soi
## C'est une question d'hygiène!
### <i class="fa-solid fa-head-side-mask"></i> C'est une question d'hygiène!
![preservatif](images/passwords/preservatif-darvador.jpg)<!-- .element width="30%" -->
[CNIL / Authentification par mot de passe : les mesures de sécurité élémentaires](https://www.cnil.fr/fr/authentification-par-mot-de-passe-les-mesures-de-securite-elementaires)
## [<i class="fa fa-firefox" aria-hidden="true"></i> Firefox](https://www.mozilla.org/fr/firefox/new/)
### [<i class="fab fa-firefox"></i> Firefox](https://www.mozilla.org/fr/firefox/new/)
* Stocke les mots de passes en clair
* *Préférences > Sécurité > Identifiants enregistrés*
![/o\](images/passwords/password.firefox.png)<!-- .element style="width: 500px" -->
* Propose un "mot de passe principal"
* *Préférences > Sécurité > Utiliser un mot de passe principal*
* [Vulnérable](https://www.raymond.cc/blog/how-to-find-hidden-passwords-in-firefox/)
* [Firefox Sync](https://www.mozilla.org/en-US/firefox/sync/)
## [<i class="fa fa-chrome" aria-hidden="true"></i> Chrome](https://www.google.fr/chrome/browser/desktop/)
### [<i class="fab fa-chrome"></i> Chrome](https://www.google.fr/chrome/browser/desktop/)
* Stocke les [mots de passe en ligne](https://passwords.google.com/settings/passwords)
* non souverain
* comme [LastPass](https://www.lastpass.com/fr), [Dashlane](https://www.dashlane.com/), [iCloud](https://www.icloud.com/), ...
* non [souverain](sovereignty.html)
* comme [LastPass](https://www.lastpass.com/fr), [Dashlane](https://www.dashlane.com/), [iCloud](https://www.icloud.com/), ..., [Firefox Sync](https://www.mozilla.org/en-US/firefox/sync/)
![/o\](images/passwords/password.google.png)
## [KeePass](http://keepass.info/)
### <i class="fa-solid fa-key"></i> [KeePass](http://keepass.info/)
* Gestionnaire (base de données, wallet, ...) de mots de passe
* **souverain**
* <i class="fa fa-bullhorn" aria-hidden="true"></i> [Produits Certifiés CSPN par l'ANSSI](https://www.ssi.gouv.fr/entreprise/certification_cspn/keepass-version-2-10-portable/)
* <i class="fa fa-bullhorn"></i> [Produits Certifiés CSPN par l'ANSSI](https://www.ssi.gouv.fr/entreprise/certification_cspn/keepass-version-2-10-portable/)
* <i class="fa fa-bullhorn" aria-hidden="true"></i> reco CNRS à l'[ANF Protection des données par le chiffrement (2015)](http://resinfo.org/spip.php?article86)
* [<i class="fa fa-file-pdf-o" aria-hidden="true"></i>
Gérer ses mots de passe avec KeePass et KeeFox par M. Libes](http://cesar.resinfo.org/IMG/pdf/07-anf_chiffre_-_tp_keepass_-_procedure.pdf)
* <i class="fa fa-bullhorn"></i> reco CNRS à l'[ANF Protection des données par le chiffrement (2015)](http://resinfo.org/spip.php?article86)
## [KeePass](http://keepass.info/)
### <i class="fa-solid fa-key"></i> [KeePass](http://keepass.info/)
<i class="fa fa-windows" aria-hidden="true"></i> Full windows
<i class="fab fa-windows"></i> Full windows
* intégration en [mono](http://www.mono-project.com/) sous linux & Mac OS X
* bugué sous certains environnement linux
* [nombreux plugins](http://keepass.info/plugins.html)
* dont [keepasshttp](https://github.com/pfn/keepasshttp) <i class="fa fa-thumbs-o-up" aria-hidden="true"></i> qui permet l'intégration au navigateur
* dont [keepasshttp](https://github.com/pfn/keepasshttp) <i class="fa fa-thumbs-o-up"></i> qui permet l'intégration au navigateur
## [KeePass](http://keepass.info/)
### <i class="fa-solid fa-key"></i> [KeePass](http://keepass.info/)
* KeePass 1 (Classic Edition)
* .kdb
* KeePass 2 <i class="fa fa-thumbs-o-up" aria-hidden="true"></i> (Professional Edition)
* .kdbx <i class="fa fa-thumbs-o-up" aria-hidden="true"></i>
* KeePass 2 <i class="fa fa-thumbs-o-up"></i> (Professional Edition)
* .kdbx <i class="fa fa-thumbs-o-up"></i>
* meilleure interropérabilité
* permet d'attacher des fichiers
* permet de lier un utilisateur windows à une base de données
## [KeePass](http://keepass.info/) / config
#### Tools > Options
![Keepass config](images/passwords/keepass.config.png)
### [KeePassX](https://www.keepassx.org/) <i class="fa fa-thumbs-o-down" aria-hidden="true"></i>
### <i class="fa-solid fa-key"></i> [KeePassX](https://www.keepassx.org/) <i class="fas fa-thumbs-down"></i>
* Portage officieux de keepass
* cross-platform (<i class="fa fa-windows" aria-hidden="true"></i> Windows, <i class="fa fa-apple" aria-hidden="true"></i> Mac OS X, <i class="fa fa-linux" aria-hidden="true"></i> Linux)
* cross-platform (<i class="fab fa-windows"></i> Windows, <i class="fab fa-apple"></i> Mac OS X, <i class="fab fa-linux"></i> Linux)
* Développement chaotique
* non intégration d'une partie du code produit par la communauté
* notamment le portage du plugin [keepasshttp](http://keepass.info/plugins.html#keepasshttp)
## [KeePassXC](https://keepassxc.org/) <i class="fa fa-thumbs-o-up" aria-hidden="true"></i>
### <i class="fa-solid fa-key"></i> [KeePassXC](https://keepassxc.org/) <i class="fas fa-thumbs-up"></i>
* Portage officieux de keepass
* [KeepassXC – A cross-platform community fork of KeepassX](https://news.ycombinator.com/item?id=13468261)
* cross-platform (<i class="fa fa-windows" aria-hidden="true"></i> Windows, <i class="fa fa-apple" aria-hidden="true"></i> Mac OS X, <i class="fa fa-linux" aria-hidden="true"></i> Linux)
* cross-platform (<i class="fab fa-windows"></i>, <i class="fab fa-apple"></i>, <i class="fab fa-linux"></i>)
* [Récemment stable](https://github.com/keepassxreboot/keepassxc/releases)
* <strike>Récemment</strike> parfaitement stable
* la [pulse du projet](https://github.com/keepassxreboot/keepassxc/pulse)
* Implémente en natif le RPC via http pour l'intégration aux navigateurs <i class="fa fa-thumbs-o-up" aria-hidden="true"></i>
## [KeePassXC](https://keepassxc.org/) / config
#### Tools > Options
![KeepassXC config](images/passwords/keepassxc.config.general.png)
* Implémente en natif <strike>le RPC via http</strike> Unix sockets (ou pipes sous Windows) pour l'intégration aux navigateurs <i class="fa fa-thumbs-o-up"></i>
## [KeePassXC](https://keepassxc.org/) / config
### [<i class="fab fa-firefox"></i> <i class="fab fa-chrome"></i> KeePassXC-Browser Migration](https://keepassxc.org/docs/keepassxc-browser-migration/)
#### Tools > Options
* pré-requis
* [KeePassXC](https://keepassxc.org/) avec l'intégration aux bon navigateurs activée
* cherche un couple login mot de passe dans [KeePassXC](https://keepassxc.org/) à partir de l'url consultée
* sauvegarde les nouvelles entrées dans [KeePassXC](https://keepassxc.org/)
![KeepassXC config](images/passwords/keepassxc.config.http.png)
### <i class="fa-brands fa-android"></i> Android
## [<i class="fa fa-firefox" aria-hidden="true"></i> <i class="fa fa-chrome" aria-hidden="true"></i> KeePassHttp-Connector](https://github.com/smorks/keepasshttp-connector/blob/master/documentation/KeePassHttp-Connector.md)
* [KeePass2Android](https://play.google.com/store/apps/details?id=keepass2android.keepass2android&hl=fr) [<i class="fab fa-github"></i>](https://github.com/PhilippC/keepass2android)
* <i class="fa fa-windows" aria-hidden="true"></i> <i class="fa fa-apple" aria-hidden="true"></i> <i class="fa fa-linux" aria-hidden="true"></i>
* extension pour l'intégration de [KeePass](http://keepass.info/) au navigateur [<i class="fa fa-firefox" aria-hidden="true"></i> firefox](https://www.mozilla.org/fr/firefox/new/), [<i class="fa fa-chrome" aria-hidden="true"></i> chrome](https://www.google.fr/chrome) et [<i class="fa fa-chrome" aria-hidden="true"></i> chromium](https://www.chromium.org/)
## [<i class="fa fa-firefox" aria-hidden="true"></i> <i class="fa fa-chrome" aria-hidden="true"></i> KeePassHttp-Connector](https://github.com/smorks/keepasshttp-connector/blob/master/documentation/KeePassHttp-Connector.md)
* pré-requis: [KeePassXC](https://keepassxc.org/) avec le module http activé
* [Documentation](https://github.com/pfn/passifox/blob/master/documentation/PassIFox.md)
* [Fonctionnalités](https://github.com/pfn/passifox/blob/master/documentation/chromeIPass.md#1-features)
* cherche un couple login mot de passe dans [KeePass](http://keepass.info/) à partir de l'url consultée
* sauvegarde les nouvelles entrées dans [KeePass](http://keepass.info/)
* ne permet pas de classer ses mots de passes à partir du navigateur
## Android
* [KeePassDroid](http://www.keepassdroid.com/) [<i class="fa fa-github" aria-hidden="true"></i>](https://github.com/bpellin/keepassdroid)
* [KeePassDX](https://www.keepassdx.com/) [<i class="fab fa-github"></i>](https://github.com/Kunzisoft/KeePassDX)
* disponible sur l'app store alternatif [F-Droid](https://f-droid.org/)
* catalogue of FOSS (Free and Open Source Software) applications for the Android platform
* [KeePass2Android](https://play.google.com/store/apps/details?id=keepass2android.keepass2android&hl=fr)
* basé sur [KeePassDroid](http://www.keepassdroid.com/)
* pas de code source disponible
* intégration à Android
## KeePass2Android / config
![android.1.keepas2android](images/passwords/android.1.keepas2android.png)<!-- .element width="35%" -->
![android.2.keepas2android](images/passwords/android.2.keepas2android.png)<!-- .element width="35%" -->
## KeePass2Android / config
![android.3.parametres](images/passwords/android.3.parametres.png)<!-- .element width="30%" -->
![android.4.langues](images/passwords/android.4.langues.png)<!-- .element width="30%" -->
![android.5.clavier.config](images/passwords/android.5.clavier.config.png)<!-- .element width="30%" -->
## KeePass2Android / config
![android.6.clavier.disable](images/passwords/android.6.clavier.disable.png)<!-- .element width="30%" -->
![android.7.clavier.warning](images/passwords/android.7.clavier.warning.png)<!-- .element width="30%" -->
![android.8.clavier.enabled](images/passwords/android.8.clavier.enabled.png)<!-- .element width="30%" -->
## KeePass2Android / config
![android.9.clavier](images/passwords/android.9.clavier.png)<!-- .element width="30%" -->
![android.10.clavier.selectionne](images/passwords/android.10.clavier.selectionne.png)<!-- .element width="30%" -->
## KeePass2Android / config
![android.11.accessibilite](images/passwords/android.11.accessibilite.png)<!-- .element width="30%" -->
![android.12.accessibilite.clavier.desactive](images/passwords/android.12.accessibilite.clavier.desactive.png)<!-- .element width="30%" -->
![android.13.accessibilite.clavier.desactive](images/passwords/android.13.accessibilite.clavier.desactive.png)<!-- .element width="30%" -->
## KeePass2Android / config
![android.14.accessibilite.clavier.warning](images/passwords/android.14.accessibilite.clavier.warning.png)<!-- .element width="30%" -->
![android.15.accessibilite.clavier.enbabled](images/passwords/android.15.accessibilite.clavier.enbabled.png)<!-- .element width="30%" -->
## KeePass2Android / config
![android.16.clavier.reglages](images/passwords/android.16.clavier.reglages.png)<!-- .element width="30%" -->
![android.17.clavier.params](images/passwords/android.17.clavier.params.png)<!-- .element width="30%" -->
![android.18.clavier.keepass2android](images/passwords/android.18.clavier.keepass2android.png)<!-- .element width="30%" -->
## iOS
* [http://keepass.info/download.html](http://keepass.info/download.html)
## [Vault by HashCorp](https://www.vaultproject.io/)
### <i class="fa-brands fa-apple"></i> iOS
* N'hésitez pas à m'envoyer vos pointeurs
## Solution Hardware
* https://www.themooltipass.com/
### <i class="fa-solid fa-server"></i> [Vault by HashiCorp](https://www.vaultproject.io/)
[![vault](images/passwords/vault.png)](https://www.vaultproject.io/)
## Conclusion
* Les produits opensource de crypto ont une vie chaotique
* TrueCrypt
* Openssh
* gpg / gpg2
## <i class="fa-solid fa-microchip"></i> Solution Hardware
* complexe à évaluer en terme de sécurité même en open source
[![mooltipass](images/passwords/mooltipass.jpg)](https://www.themooltipass.com/)
......@@ -10,7 +10,7 @@
* 1991
* munition / cryptowar
* PGP abandonné
* GPG GnuPG sous GPL devient est le standard
* GPG GnuPG sous GPL est devenu le standard
# Gérer son envrionnement GPG
......@@ -67,7 +67,7 @@ $ gpgenv use /tmp/gnupg-ZuXYw && gpgenv cd
* permet d'utiliser l'env restauré et de se positionner dans le répertoire associé
# Gérer ses clés GPG
# Gérer ses clés PGP
## Création d’une clé PGP
......@@ -142,6 +142,7 @@ $ gpg --list-private-keys
Authentication
### Exporter une clé GPG
```bash
......@@ -149,6 +150,7 @@ $ gpg --export --armor batman@batcave.com > batman.pub.asc
$ gpg --export --armor 3E5AC6A0 > batman.pub.asc
$ gpg --export --armor DD6A21D4 > batman.pub.asc
```
* exportent le même certificat (celui de la clé maître)
* ASCII-armor encrypted or signed output
......@@ -315,6 +317,16 @@ Partout
* en pièce jointe ou dans le corps d'un message
## une clé PGP sur une carte de visite?
* [asc2qr](https://github.com/4bitfocus/asc-key-to-qr-code)
* ne marche pas
* [Putting my pgp idl ink on printed business cards](https://security.stackexchange.com/questions/70501/putting-my-pgp-id-link-on-printed-business-cards)
* [qrencode](ht1tps://doc.ubuntu-fr.org/qrcode)
* just do it!
### Serveurs de clé PGP
* existent depuis que gpg existe
......@@ -367,16 +379,6 @@ Hardocre mode \o/
#### et une sous clé dédiée?
## une clé PGP sur une carte de visite?
* [asc2qr](https://github.com/4bitfocus/asc-key-to-qr-code)
* ne marche pas
* [Putting my pgp idl ink on printed business cards](https://security.stackexchange.com/questions/70501/putting-my-pgp-id-link-on-printed-business-cards)
* [qrencode](ht1tps://doc.ubuntu-fr.org/qrcode)
* just do it!
## Révocation
* secret ou clé perdu
......@@ -384,7 +386,7 @@ Hardocre mode \o/
* l'attaquant peut
* écrire en se faisant passer pour le propriétaire des clés
* signer en général
* lire tout message (passé et avenir) chiffré avec la clé publique
* lire tout message (passé et à venir) chiffré avec la clé publique
## Révocation
......@@ -530,13 +532,22 @@ Automatisable via cron
```
### Importer un clé à partir d'un serveur de clé public
### Importer une clé à partir d'un serveur de clé public
```bash
gpg --keyserver pgp.mit.edu --recv-key 0EBE8000
```
### publier une clé sur serveur de clé public
```bash
gpg --keyserver pgp.mit.edu --send-keys 0DCD0D14
```
ou à partir de https://pgp.mit.edu/
## Réseau de confiance
* Les signatures sont publiques
......@@ -553,7 +564,7 @@ gpg --keyserver pgp.mit.edu --recv-key 0EBE8000
Avant de signer une clé il faut vérifier qu'elle appartient bien à une personne physique
* il faut
* échanger la clé ou l'empreinte de la clé physiquement
* faut vérifier les papiers d'identité de la personne
* vérifier les papiers d'identité de la personne
## Fingerprint
......
# Souveraineté
Si l'utilisateur n'utilise pas des outils qu'il contrôle ...
# <i class="fa-solid fa-power-off"></i>
Il est contrôlé par ses outils
Si tu n'utilises pas des outils que tu contrôles ...
tu es contrôlé par ces outils
## Hacking
<table>
<tr>
<td>![RMS](images/sovereignty/stallman.jpg "RMS")<!-- .element width="60%"--></td>
<td>![ers](images/sovereignty/raymond.jpg "ers")<!-- .element width="50%" --></td>
</tr>
</table>
[![Richard Stallamn - RMS](images/sovereignty/stallman.jpg "RMS")<!-- .element width="20%"-->](https://fr.wikipedia.org/wiki/Richard_Stallman)
[![Eric Steven Raymond - ESR](images/sovereignty/raymond.jpg "ers")<!-- .element width="37%" -->](https://fr.wikipedia.org/wiki/Eric_Raymond)
* Black Hat, white Hat, Grey Hat
* Ethical
* [une brève histoire des hackers](http://www.linux-france.org/article/these/hackers_history/fr-a_brief_history_of_hackerdom_monoblock.html)
* [une brève histoire des hackers](https://usbeketrica.com/fr/article/une-breve-histoire-des-hackers)
* [code is law](http://framablog.org/2010/05/22/code-is-law-lessig/)
......@@ -29,7 +27,7 @@ Il est contrôlé par ses outils
* la liberté d'étudier le logiciel
* la liberté de modifier le logiciel et de redistribuer les versions modifiées
* La viralité
* le copie left
* **🄯 le copie left** ~~©~~
## Open source
......@@ -40,20 +38,21 @@ Il est contrôlé par ses outils
* Même Microsoft s'ouvre
* ["An Open Letter to Hobbyists" Bill Gates, 1976](https://fr.wikipedia.org/wiki/An_Open_Letter_to_Hobbyists)
* ["Linux is a cancer" Steve Ballmer, 2001](http://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_cancer/)
* [Windows bientôt en Open Source](http://www.lemondeinformatique.fr/actualites/lire-windows-bientot-en-open-source-60767.html)
* [Foire aux questions sur l'open source et l'intéropérabilité](http://www.microsoft.com/france/openness/ressources/faq.aspx)
* [github](https://github.com), [type script](https://www.typescriptlang.org/), [vscode](https://code.visualstudio.com/), [et autres ...](https://opensource.microsoft.com/projects/)
## Logiciel privateur
[![Logiciel Propriétaire](https://upload.wikimedia.org/wikipedia/commons/1/14/Classification_des_licences.svg)](https://fr.wikipedia.org/wiki/Logiciel_propri%C3%A9taire)
## logicels libres & opensources
* OS: [Ubuntu](https://ubuntu-fr.org/)
* OS: [Certains linux sont libres](https://www.gnu.org/distros/free-distros.fr.html), mais [pas ubuntu](https://www.developpez.com/actu/332740/Richard-Stallman-s-exprime-sur-l-etat-du-mouvement-du-logiciel-libre-et-declare-que-les-Macintosh-continuent-d-etre-des-prisons-pour-les-utilisateurs/)
* logiciels: [framasoft](https://framasoft.org/), [alternativeto](https://alternativeto.net/)
* logiciels: [framasoft](https://framasoft.org/), [alternativeto](https://alternativeto.net/), [liste des logiciels libres](https://fr.wikipedia.org/wiki/Liste_de_logiciels_libres) (tiens il y a ubuntu?)
* Android: [F-DROID](https://f-droid.org/fr/), [<i class="fa fa-reddit" aria-hidden="true"></i> best android ROM for privacy](https://www.reddit.com/r/privacy/comments/6d3a33/best_android_rom_for_privacy/)
* Android: [LineageOS](https://lineageos.org/), [F-DROID](https://f-droid.org/fr/), [<i class="fab fa-reddit"></i> best android ROM for privacy](https://www.reddit.com/r/privacy/comments/6d3a33/best_android_rom_for_privacy/)
## Services
......@@ -64,3 +63,29 @@ Il est contrôlé par ses outils
* sur des machines accessibles physiquement si possible
* enjeux des connexions personnelles
* Utiliser des services décentralisés
* Déjouer le [capitalisme de surveillance](https://www.zulma.fr/livre/lage-du-capitalisme-de-surveillance/)
## Services
* [OwnCloud](https://owncloud.org/) / [Nextcloud](https://nextcloud.com/) > [framadrive](https://framadrive.org/) ou [service-public.fr](https://www.service-public.fr/assistance-et-contact/aide/compte#Comment%20stocker%20vos%20documents%20) > [Google Drive](https://drive.google.com) / [Dropbox](https://www.dropbox.com) / [One Drive](https://onedrive.live.com)
* [OwnCloud](https://owncloud.org/) / [Nextcloud](https://nextcloud.com/) > [framagenda](https://framagenda.org) > [Google calendar](https://calendar.google.com)
* [Etherpad](http://etherpad.org/) > [Framapad](https://framapad.org/) > [Google Docs](https://docs.google.com)
* [Postfix](http://www.postfix.org/) > [Proton mail](https://protonmail.com/) > [GMail](https://mail.google.com/)
* [Qwant](https://www.qwant.com/) > [DuckDuckGo](https://duckduckgo.com/) > [Google](https://www.google.fr)
<div style="text-align: center">
<a href="https://www.chatons.org">
<img src="https://www.chatons.org/sites/default/files/uploads/logo_chatons.png" style="width: 200px"/>
</a>
</div>
## Auto-hébergement
[![raspberry](images/sovereignty/raspberry.png)<!-- .element width="45%" -->](https://www.raspberrypi.org/)
* matériel open source + connexion personnelle + logiciels libres = **<3**
* [yunohost ](https://yunohost.org/#/)
* [ispconfig](https://www.ispconfig.org/)
* [La brique Internet](https://labriqueinter.net/)
......@@ -8,7 +8,7 @@
* Un OS contient
* tous vos fichiers personnels
* toutes les archives vos communications, mail, chat, etc ...
* certains fichiers temporaires ou cachés dont vous ignorés l'existence
* certains fichiers temporaires ou cachés dont vous ignorez l'existence
* tous vos mots de passe enregistrés
......@@ -18,7 +18,7 @@
* est lisible avec les permissions d'administrateur
* Une solution est de chiffrer (chiffrement symétique) son système
* Booter à partir d'un autre système l'attaquant devra connaître le mot de passe pour lire le disque en clair
* Pour booter à partir d'un autre système l'attaquant devra connaître le mot de passe pour lire le disque en clair
## Enjeu de l'OS
......@@ -46,7 +46,7 @@ Solution de chiffrement par OS
## Enjeu de l'OS
* Il est très compliqué de savoir les opérations qu'effectue un système
* surtout le code source de l'OS n'est pas analysable
* surtout si le code source de l'OS n'est pas analysable
* Une solution est d'utiliser un système d'exploitation open source
* mieux un système open source réputé préoccupé par la vie privée et la sécurité
......@@ -56,22 +56,15 @@ Solution de chiffrement par OS
* OS **live** basé sur **Debian**
* 64 bits uniquement depuis 2017
* Pbjectifs
* Objectifs
* préserver la vie privée
* préserver l'anonymat
* Moyen
* réduire ses traces sur la machines
* réduire ses traces sur la machine hôte
* réduire / chiffrer les traces laissées sur le réseau
* résout le problème de l'amnésie d'un OS live
## Tails
* [Site officiel](https://tails.boum.org/about/index.fr.html)
* [Documentation](https://tails.boum.org/doc/index.fr.html)
* [Tails download](https://tails.boum.org/install/)
## Historique
* Juin 2009
......@@ -99,19 +92,45 @@ Solution de chiffrement par OS
![VM Tails](images/tails/vm-tails.png)
## Mise à jour
![VM Tails](images/tails/vm-tails-2.png)
![VM Tails](images/tails/vm-tails-3.png)
![VM Tails](images/tails/vm-tails-4.png)
![VM Tails](images/tails/vm-tails-5.png)
## Création d'une partition chiffrée
![VM Tails](images/tails/vm-tails-6.png)
![VM Tails](images/tails/vm-tails-7.png)
![VM Tails](images/tails/vm-tails-8.png)
## Suite logicielle
## Persistence
![VM Tails](images/tails/vm-tails-9.png)
## Persistence des profiles
![VM Tails](images/tails/vm-tails-10.png)
## Persistence des applications
## Utilisation dans une machine virtuelle
## Lancer
* version Tails ISO vm
* version Tails de la clé synchrones
![VM Tails](images/tails/vm-tails-11.png)
## Tails
* [Site officiel](https://tails.boum.org/about/index.fr.html)
* [Documentation](https://tails.boum.org/doc/index.fr.html)
* [Tails download](https://tails.boum.org/install/)
* [Installer des logiciels additionnels](https://tails.boum.org/doc/advanced_topics/additional_software/index.fr.html)
......@@ -11,7 +11,8 @@
* bibliothèques implémentant le protocole SSL
* commande en ligne
* Supporte SSL 2.0, SSL 3.0 et TLS 1.0
* Actuellement TLS 1.2
* Actuellement TLS 1.3
* [ANSSI : privilégier TLS1.3 et tolérer TLS1.2, TLS1.1 et TLS1.0](https://www.ssi.gouv.fr/uploads/2016/09/guide_tls_v1.1.pdf)
* Distribué sous une licence de type Apache
......@@ -39,23 +40,23 @@
## [X.509](https://fr.wikipedia.org/wiki/X.509)
* Système hiérarchique d'autorités de certification
* *certification authority - **CA***
* une CA attribue un certificat liant
* *certification authority* - ***CA***
* une ***CA*** attribue un certificat liant
* une clé publique
* un nom distinctif
* *Distinguished Name - **DN***
* *Distinguished Name* - ***DN***
## [X.509](https://fr.wikipedia.org/wiki/X.509) DN
* C: Country
* L: Locality
* ST: State
* O: Organisation
* SO: Organizational Unit
* CN: Common Name
* Street: Adress
* E: Mail
* *C*: Country
* *L*: Locality
* *ST*: State
* *O*: Organisation
* *SO*: Organizational Unit
* *CN*: Common Name
* *Street*: Adress
* *E*: Mail
#### Anatomie
......@@ -63,14 +64,14 @@
* **Version de la norme**
* **Serial**
* Algorithme de signature du certificat
* **Issuer** le signataire (DN de la CA)
* **Validty** début fin de validité
* **Subject name** DN identifié par le certificat
* **Issuer** le signataire (***DN*** de la ***CA***)
* **Validity** début fin de validité
* **Subject name** **DN** identifié par le certificat
* **Subject Public Key**
* Extensions (ajouté en v3)
* paires clé / valeur
Le tout signé par la CA
Le tout signé par la **CA**
#### Extensions
......@@ -92,7 +93,7 @@ $ openssl genrsa -out ca.key 4096
```
* 4096 représente la taille de la clé
* ```ca.key``` contient la clé privée ET la clé publique
* ca.key contient la clé privée ET la clé publique
```bash
$ openssl rsa -in ca.key -pubout
......@@ -165,19 +166,19 @@ $ openssl x509 -purpose -in ca.crt -inform PEM
* Tiers de confiance
* Recueille les demandes de certifications
* Vérifie la validité de la demande
* Vérifie l'identité
* Preuve par contrôle des domaines
* vérifie la validité de la demande
* vérifie l'identité
* preuve par contrôle des domaines
* Signe les certificats
* Gère les révocations
## Autorité de certificaiton (CA)
* CA de confiance
* ***CA*** de confiance
* importées par défaut dans le navigateur
* Tout supprimer?
* Etre importée dans les navigateurs
* être importée dans les navigateurs
* payer (le navigateur)
......@@ -190,21 +191,23 @@ $ openssl x509 -purpose -in ca.crt -inform PEM
Certificat racine
* clés publiques non signées, ou auto-signées
* Clés publiques non signées, ou auto-signées
* le sommet de la pyramide de confiance
* Un certificat est rarement signé par une CA racine
* La CA racine créée plusieurs CA intermédiaires
* sous scellés / déconnectés / sortis (autre CA)
* un certificat est rarement signé par une ***CA*** racine
* la ***CA*** racine créée plusieurs ***CA*** intermédiaires
* sous scellés / déconnectés / sortis (autre ***CA***)
* auto signé
[DigiCert Trusted Root Authority Certificates](https://www.digicert.com/digicert-root-certificates.htm)
## Chain of trust
Chaînes de certification
* Les CA intermédiaires signent
* Les ***CA*** intermédiaires signent
* les certificats des clients
* d'autres CA intermédiaires
* d'autres ***CA*** intermédiaires
* il faut alors fournir la chaîne de certification
* au cas où l'intermédiaire ne soit pas dans le navigateur
......@@ -237,7 +240,7 @@ Chaînes de certification
* wildcard
* https://amendes.gouv.fr
* Certificats expirés
* Autorité de certification non importée
* ***CA*** non importée
* ...
......@@ -251,19 +254,19 @@ $ openssl req -new -newkey rsa:2048 -sha256 \
```
* Générer un requête de certification
* Un CSR est auto-signé (pour vérifier l'intégrité)
* Un ***CSR*** est auto-signé (pour vérifier l'intégrité)
```bash
$ openssl req -in user.csr -text -noout
```
* Lire le CSR
* Lire le ***CSR***
```bash
$ openssl req -text -noout -verify -in user.csr
```
* Vérifier le CSR
* Vérifier le ***CSR***
### Création d'un certificat à partir d'un CSR
......@@ -275,11 +278,11 @@ $ openssl x509 -req -days 365 \
-in user.csr -out user.crt \
```
* Génèrer un certificat à partir d'un CSR
* la CA vérifie qu'elle gère le domaine
* la CA ajoute quelques informations
* la CA signe avec sa clé privée
* la CA protège sa clé privée
* Génèrer un certificat à partir d'un ***CSR***
* la ***CA*** vérifie qu'elle gère le domaine
* la ***CA*** ajoute quelques informations
* la ***CA*** signe avec sa clé privée
* la ***CA*** protège sa clé privée
note:
- https://www.digitalocean.com/community/tutorials/openssl-essentials-working-with-ssl-certificates-private-keys-and-csrs
......@@ -319,20 +322,20 @@ note:
Révocation de certificats
* Contient une liste de certificats valides à révoquer
* liste de certificats liste des identifiants des certificats qui ont été révoqués ou invalidés
* utile en cas de compromission / décommissionnement
* informer la CA
* la CA ajoute le certificat à sa liste de certificats révoqués
* cette liste est signée par la CA
* Souvent la clé qui signe les certificats signe les CRL
* Quand que le navigateur interroge-t-il les CRL ?
* informer la ***CA***
* la ***CA*** ajoute le certificat à sa liste de certificats révoqués
* cette liste est signée par la ***CA***
* Souvent la clé qui signe les certificats signe les ***CRL***
* Quand que le navigateur interroge-t-il les ***CRL*** ?
#### Certificate Revocation List (CRL)
* Serial
* Algorithme de signature de la CRL
* **Issuer** le signataire (DN de la CA)
* Algorithme de signature de la ***CRL***
* **Issuer** le signataire (***DN*** de la ***CA***)
* **Update date **
* **Next Update date**
* **CRL**
......@@ -366,13 +369,13 @@ Protocole d’interrogation de validité pour un certificat
![OCSP](images/ssl/OCSP.png)
* si l'OCSP n'est pas disponible pour le certificat firefox accepte le certificat
* si l'***OCSP*** n'est pas disponible pour le certificat firefox accepte le certificat
* s'il est valide
#### Online Certificate Status Protocol (OCSP)
* peu déployé
* Peu déployé
* [Approche par log publique de création révocation](http://confiance-numerique.clermont-universite.fr/Slides/R-Sasse.pdf) [<i class="fa fa-video-camera"></i>](http://webtv.u-clermont1.fr/media-MEDIA150907102804168)
* [Google's Certificate Transparency project](http://www.certificate-transparency.org/)
......@@ -381,7 +384,7 @@ Protocole d’interrogation de validité pour un certificat
* Crée un canal de communication **authentifié**, protégé en **confidentialité** et en **intégrité**
* Utilise des certificats X.509
* délivrés par des CA
* délivrés par des ***CA***
* Utilise un système de chiffrement asymétrique
* pour échanger une clé pour le chiffrement symétrique
* Protocole initialement pensé pour sécurisé HTTP
......@@ -412,54 +415,7 @@ Transport Layer Security
* **TLS 1.0** = SSL 3.1 [IETF](http://www.ietf.org/)
* **1.1** released en Avril 2006, [RFC 4346](http://www.frameip.com/rfc/rfc3546.php)
* **1.2** released en Août 2008, [RFC 5246](http://www.frameip.com/rfc/rfc4366.php)
## Connexion SSL/TLS (1)
Le serveur
* Envoie son certificat au client
## Connexion SSL/TLS (2)
Le client
* Reçoit un certificat
* Vérifie sa validité (domaine, date, émetteur, révocation?)
* Génère une clé de chiffrement symétrique (**secret partagé**)
* Chiffre le **secret partagé** avec la clé publique du serveur
* Envoie le **secret partagé** chiffré au serveur (ClientKeyExchange)
## Connexion SSL/TLS (3)
Le serveur
* Reçoit le **secret partagé** chiffré généré par le client
* Déchiffre le **secret partagé** avec sa clé privée
<br>
#### La suite de la communication est chiffrée symétriquement
## Connexion SSL/TLS
* Le client a authentifié le serveur
* mais le serveur n’a aucune information sur le client
* possibilité d'avoir un certificat côté client
* Les paramètres de chiffrements
* sont négociés et « jetables »
## Certificats clients
* Un client peut présenter un certificat au serveur
* Le serveur vérifie si le certificat est signé par une CA de confiance
* Le serveur peut utiliser ces informations pour authentifier l’utilisateur
* Le certificat peut être stocké dans un périphérique (e.g. [Yubikey](https://www.yubico.com/)), une carte à puce (e.g. [CPS](https://fr.wikipedia.org/wiki/Carte_de_Professionnel_de_Sant%C3%A9)), ...
* **1.3** released en Août 2018, [RFC 8446](https://www.bortzmeyer.org/8446.html)
## [Cypher suite](https://fr.wikipedia.org/wiki/Suite_cryptographique)
......@@ -476,7 +432,7 @@ Suite cryptographique
<pre><code class="hljs bash" style="font-size: 35px">$ openssl ciphers -v</code></pre>
## ex: TLS_RSA_WITH_RC4_128_MD5
## TLS_RSA_WITH_RC4_128_MD5
Se lit
......@@ -488,93 +444,112 @@ Suite cryptographique
* protection de l'intégrité du canal de communication via [HMAC MD5](https://fr.wikipedia.org/wiki/Keyed-Hash_Message_Authentication_Code)
## Handshake
![TLS Handshake](images/ssl/TLS-Handshake.png "SSLv2 Handshake")
[Comprendre le SSL/TLS: Partie 4 Handshake Protocol](https://blog.eleven-labs.com/fr/comprendre-le-ssltls-partie-4-handshake-protocol/)
<br>
## clienthello
(*[Déroulement des échanges ssl en détail](https://www.securiteinfo.com/cryptographie/ssl.shtml)*)
Le client
* envoie les suites cryptographiques qu'il est capable de mettre en oeuvre
![TLS Handshake](images/ssl/TLS-Handshake.png "SSLv2 Handshake")
## Réponse serveur
Le serveur
* Si aucune suite n'est satisfaisante
* **Alert** fin de connexion
* Sinon
* **ServerHello** suite cryptographique choisie
* **ServerRandom** valeur aléatoire (publique)
* **Certificate** certificat du serveur
* **ServerHelloDone** indiquant qu'il est attente d'une réponse du client
#### Négociation de la cipher suite
#### Négociation de la suite cryptographique
* Tous les serveurs web ne négocient pas les cypher suites de la même façon
* IIS prend la première suite cryptographique préférée du serveur et proposée par le client
* Apache prend la première suite proposée par le client et supportée par le serveur
* **IIS** prend la première suite cryptographique préférée du serveur et proposée par le client
* **Apache** prend la première suite proposée par le client et supportée par le serveur
* permet une baisse du niveau de sécurité
* *SSLHonorCipherOrder* pour sécuriser
[SSL / TLS Renegotiation Handshakes MiTM Plaintext Data Injection- medium or low
risk?](https://security.stackexchange.com/questions/63867/ssl-tls-renegotiation-handshakes-mitm-plaintext-data-injection-medium-or-low)
[SSL / TLS Renegotiation Handshakes MiTM Plaintext Data Injection- medium or low risk?](https://security.stackexchange.com/questions/63867/ssl-tls-renegotiation-handshakes-mitm-plaintext-data-injection-medium-or-low)
## Vulnérabilité TLS_RSA_WITH_RC4_128_MD5
## Fin de négociation
* si la clé privée du serveur est récupérée
* le **secret partagé** est récupérable
* on peut obtenir les clés de session
* toutes les communications sont alors déchiffrables
* passées
* futures
Le client
* Vérifie la validité du certificat
* Génère une clé de chiffrement symétrique
* **secret partagé** ou **pre master secret**
* Chiffre le **secret partagé** avec la clé publique du serveur
## Perfect Forward Secrecy (PFS)
*Confidentialité Persistante*
## Fin de négociation
* La clé compromission d'un clé privée n'affecte pas la confidentialité des communications passées
* utilisée uniquement pour signer
* [Problème NP-complet](https://fr.wikipedia.org/wiki/Probl%C3%A8me_NP-complet)
Le client envoie au serveur
* **ClientKeyExchange** le **secret partagé** chiffré
* **ChangeCipherSpec** paramètres pour la suite cryptographique choisie
* **Finished** fin de négociation
* premier message chiffré symétriquement
* avec **secret partagé** et **ServerRandom**
![Diffie-Hellman exchange](images/ssl/diffie-hellman-exchange.png "Diffie-Hellman exchange")
## Fin de négociation
<!-- !!!! -->
## Handshake - SSLv2
Le serveur
![SSLv2 Handshake](images/ssl/SSLv2-Handshake.png "SSLv2 Handshake")
* Reçoit le **secret partagé** chiffré généré par le client
* Déchiffre le **secret partagé** avec sa clé privée
* **ChangeCipherSpec** paramètres pour la suite cryptographique choisie
* **Finished** fin de négociation
* Il n'y a pas de message **finished**
* **finished** protège l'échange en intégrité
<br />
#### La suite de la communication est chiffrée symétriquement
## Handshake - SSLv2 - MIM
![SSLv2 Handshake](images/ssl/SSLv2-MIM-Handshake.png "SSLv2 Handshake")
## Connexion SSL/TLS
* Le client a authentifié le serveur
* mais le serveur n’a aucune information sur le client
* possibilité d'avoir un certificat côté client
* Les paramètres de chiffrements
* sont négociés et « jetables »
## Certificats clients
* Un client peut présenter un certificat au serveur
* Le serveur vérifie si le certificat est signé par une CA de confiance
* Le serveur peut utiliser ces informations pour authentifier l’utilisateur
* Le certificat peut être stocké dans un périphérique (e.g. [Yubikey](https://www.yubico.com/)), une carte à puce (e.g. [CPS](https://fr.wikipedia.org/wiki/Carte_de_Professionnel_de_Sant%C3%A9)), ...
Note:
- attaque man in the middle permet de faire baisser la sécurité des méthodes supportés par le client ou le serveur
- pas de déchiffrement à la volée
- mais possible avec un peu de temps
- SSLv2 est aussi vulnérable parce que
- utilise MD5 dans toutes ses ciphersuites
- utilise la même clé pour protéger le flux en intégrité et en confidentialité
- pas de mécanisme de signalement de fin de connexion
- attaques par "troncature" du flux
- SSLv2 ne doit pas être utilisé --
## Vulnérabilité TLS_RSA_WITH_RC4_128_MD5
## Renégociation sécurisée
* si la clé privée du serveur est récupérée
* le **secret partagé** est récupérable
* on peut obtenir les clés de session
* toutes les communications sont alors déchiffrables
* passées
* futures
* en cas de
* rafraîchissement des clés
* à l'initiative du client ou du serveur
* en cas d'authentification du client
* authentification d'une partie protégée
le serveur initie une renégociation
## Perfect Forward Secrecy (PFS)
*Confidentialité Persistante*
[![TLS Renégociation](images/ssl/TLS-Renegociation.png "TLS Renégociation")<!-- .element style="width: 85%" -->](images/ssl/TLS-Renegociation.png)
* La clé compromission d'un clé privée n'affecte pas la confidentialité des communications passées
* utilisée uniquement pour signer
* [Problème NP-complet](https://fr.wikipedia.org/wiki/Probl%C3%A8me_NP-complet)
![TLS Renégociation man in the middle](images/ssl/TLS-MIM-Renegociation.png "TLS Renégociation man in the middle")<!-- .element style="width: 75%" -->
<!-- !!!! -->
![Diffie-Hellman exchange](images/ssl/diffie-hellman-exchange.png "Diffie-Hellman exchange")
## Certification Authority Authorization (CAA)
......@@ -583,7 +558,7 @@ le serveur initie une renégociation
* Devenu obligatoire le 8 septembre 2017
* Le 9 septembre 2017, Comodo s’est fait pincer pour ne pas le respecter :
* Le 9 septembre 2017, Comodo s’est fait pincé pour ne pas le respecter :
[Comodo Caught Breaking New CAA Standard One Day After It Went Into Effect](https://www.bleepingcomputer.com/news/security/comodo-caught-breaking-new-caa-standard-one-day-after-it-went-into-effect/)
Note:
......@@ -594,7 +569,10 @@ Note:
## DNS-Based Authentication of Named Entities (DANE)
* Publication du certificat dans un enregistrement TLSA du DNS, protégé par DNSSEC
* pour un nom de domaine
* publication du certificat signé dans un enregistrement TLSA du DNS
* protégé par DNSSEC
* permet de spécifier quelles **CAs** peuvent émettre des certificats
* Validation par les clients
......@@ -607,7 +585,8 @@ Note:
* [les dangers du wifi](https://wiki.wireshark.org/CaptureSetup/WLAN)
* [firesheep](http://codebutler.github.io/firesheep/)
* Intégrité
* Authentification (via les certificats)
* Authentification
* via les certificats
## Apache
......@@ -621,8 +600,13 @@ Note:
## Que "chiffre" https
* On ne voit pas l'url dans le traffic
* mais on voit l'ip de l'hôte
* Proxy https ou VPN anonymisent complètement le traffic
* on voit l'ip de l'hôte
* on voit le domaine dans les DNS
* Anonymat?
* Proxy http
* VPN
* Tor
Note:
- Attention les proxy
......@@ -652,25 +636,18 @@ Note:
* [Certificate authorities issue SSL certificates to fraudsters](http://news.netcraft.com/archives/2015/10/12/certificate-authorities-issue-hundreds-of-deceptive-ssl-certificates-to-fraudsters.html)
## <i class="fa fa-gears"></i> Tests serveurs
## <i class="fa fa-gears"></i> Tester
* Tester un certificat SSL
* [SSL Decoder](https://ssldecoder.org/)
* [Certificate Expiry Monitor](https://certificatemonitor.org/)
* Tester une configuration SSL
* Tester un certificat SSL/TLS
* [SSL Certificate Decoder](https://www.sslchecker.com/certdecoder)
* Tester un serveur SSL/TLS
* [Qualys](https://www.ssllabs.com/ssltest/)
* [Comodo ssl analyzer](https://sslanalyzer.comodoca.com/)
* [OpenSSL Decoder](https://raymii.org/s/software/OpenSSL_Decoder.html)
* [Strong SSL Security On nginx](https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html)
## <i class="fa fa-gears"></i> Tests navigateurs
* [SSL Cipher Suite Details of Your Browser](https://cc.dcsec.uni-hannover.de/)
* [testssl.sh](https://github.com/drwetter/testssl.sh)
* ```shell
$ nmap -p 443 --script=ssl-enum-ciphers heart.bleed
```
* Tester un navigateur
* [How's my SSL?](https://www.howsmyssl.com/)
* [<i class="fa fa-firefox"></i> Toggle Cipher Suites](https://addons.mozilla.org/fr/firefox/addon/toggle-cipher-suites/)
* [<i class="fa fa-github"></i> Toggle Cipher Suites](https://github.com/dillbyrne/toggle-cipher-suites/releases)
* [<i class="fa fa-github"></i> Calomel SSL validator](https://addons.mozilla.org/fr/firefox/addon/calomel-ssl-validation/)
Note:
- aspect arbitraire de la notation notamment qualys
......@@ -682,45 +659,28 @@ Note:
* un service sans **s** est un problème
* pas ftp, mais sftp ou ftps
* pas rsync, mais rsync over sssh
* pas rsync, mais rsync over ssh
* pas imap, pop3 et smtp, mais imaps, pop3s et smtps
* Seules les implémentations conformes à TLSv1 et supérieures doivent être employées
* Seules les implémentations conformes à TLSv2 et supérieures doivent être employées
* Les cyphersuites offrant la PFS doivent être favorisées
* [Anssi - SSL/TLS: état des lieux et recommandations](www.ssi.gouv.fr/.../SSL_TLS_etat_des_lieux_et_recommandations.pdf)
## <i class="fa fa-medkit"></i> Se protéger / Apache
* [Chiffrement fort SSL/TLS : Mode d'emploi](https://httpd.apache.org/docs/2.4/fr/ssl/ssl_howto.html)
* [Hardening Your Web Server’s SSL Ciphers](https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/)
* [ssllabs.com's own Apache SSL Config Directives](https://community.qualys.com/thread/9652)
* [Apache web server SSL best practices](https://wiki.fysik.dtu.dk/it/SSL_best_practices)
* [Anssi - SSL/TLS: état des lieux et recommandations](https://www.ssi.gouv.fr/uploads/2012/06/ssl_tls_etat_des_lieux_et_recommandations.pdf)
## <i class="fa fa-medkit"></i> Se protéger / Nginx
* [HTTPS on Nginx: From Zero to A+ (Part 1)](https://juliansimioni.com/blog/https-on-nginx-from-zero-to-a-plus-part-1/)
* [HTTPS on Nginx: From Zero to A+ (Part 2)](https://juliansimioni.com/blog/https-on-nginx-from-zero-to-a-plus-part-2-configuration-ciphersuites-and-performance/)
#### <i class="fa fa-medkit"></i> Se protéger / tout serveur
* [https://cipherli.st/](https://cipherli.st/) pour une conf sécurisée
* [<i class="fa fa-warning"></i> Modifier tous les vhosts pour nginx!!](http://serverfault.com/questions/641150/nginx-cant-disable-sslv3)
## <i class="fa fa-medkit"></i> Se protéger
* fixer le [weak Diffie-Hellmani (aka logjam Attack](https://weakdh.org/))
* Apache
* [Chiffrement fort SSL/TLS : Mode d'emploi](https://httpd.apache.org/docs/current/ssl/ssl_howto.html)
différents services
* [https://syslink.pl/cipherlist/](https://syslink.pl/cipherlist/)
* fixer le [weak Diffie-Hellman (aka logjam Attack)](https://weakdh.org/))
<pre><code class="hljs bash" style="font-size: 28px"> openssl dhparam -out dhparams.pem 2048 </code></pre>
* suivre les [<i class="fa fa-book"></i> recommandations de l'ANSSI](https://www.ssi.gouv.fr/agence/publication/ssltls-3-ans-plus-tard/)
#### A lire
* [Comprendre SSL/TLS - 1](https://blog.eleven-labs.com/fr/comprendre-ssl-tls-partie-1/)
* [Comprendre SSL/TLS - 2](https://blog.eleven-labs.com/fr/comprendre-ssl-tls-partie-2-chiffrement/)
* [Comprendre SSL/TLS - 3](https://blog.eleven-labs.com/fr/comprendre-le-ssltls-partie-3-certificats/)
* [Comprendre SSL/TLS - 4](https://blog.eleven-labs.com/fr/comprendre-le-ssltls-partie-4-handshake-protocol/)
* [Comprendre SSL/TLS - 5](https://blog.eleven-labs.com/fr/comprendre-ssl-tls-partie-5-record-protocol/)
* [Déroulement des échanges ssl en détail](https://www.securiteinfo.com/cryptographie/ssl.shtml)
* [Comprendre SSL/TLS - 1, 2, 3, 4, 5](https://blog.eleven-labs.com/fr/comprendre-ssl-tls-partie-1/)
* [CaenCamp #33 : Infrastructures à clés publiques](https://www.youtube.com/watch?v=9zNAUFtw7Ac) par [Romain Tartiaire](https://romain.blogreen.org/)
* [Chrome, Firefox et recherches Google : passage en force du HTTPS ](http://dareboost.developpez.com/tutoriels/securite-web/https-nouveaute-recherche-google-chrome-firefox/)
* http://www.cypherpunks.to/~peter/T2a_X509_Certs.pdf
* [http://cypherpunks.to/~peter/T2a_X509_Certs.pdf](http://www.cypherpunks.to/~peter/T2a_X509_Certs.pdf)
* Attacks against Tor are an active area of academic research,[16][17] and are welcomed by the Tor Project itself.
* comment faire de la recherche si on a pas de matière première
* Bruce Schneier fait parti du board "Tor Project installs new board of directors after Jacob Appelbaum controversy", Colin Lecher, July 13, 2016, The Verge
* Dans un contexte de recherche passer par Tor peut être une bonne pratique dans un contexte IE agressive
* une relais tor bridge est un plus pour les chercheurs en déplacement ou à l'étranger notamment en Chine ou en Arabie Saoudite
* Criminals can already do bad things. Since they're willing to break laws, they already have lots of options available that provide better privacy than Tor provides....
* Tor aims to provide protection for ordinary people who want to follow the law. Only criminals have privacy right now, and we need to fix that....
So yes, criminals could in theory use Tor, but they already have better options, and it seems unlikely that taking Tor away from the world will stop them from doing their bad things. At the same time, Tor and other privacy measures can fight identity theft, physical crimes like stalking, and so on.
— Tor Project FAQ[78]
* l'isima en tant qu'école d'ingénieur informatique pourrait avoir son site le darknet, pourquoi pas un relais?
......@@ -3,16 +3,15 @@
# <i class="fa fa-user-secret" aria-hidden="true"></i>
## [panopticlick](https://panopticlick.eff.org/)
## [Cover Your Tracks](https://coveryourtracks.eff.org/)
### Is your browser safe against tracking?
[Electronic Frontier Foundation](https://www.eff.org/about)'s project
## Fingerprint
![Finger print](images/tracking/fingerprint.png)<!-- .element style="width: 80%" -->
[![Finger print](images/tracking/fingerprint.png)<!-- .element style="width: 80%" -->](https://coveryourtracks.eff.org/)
## Cookies
......@@ -40,15 +39,9 @@
* [<i class="fa fa-github" aria-hidden="true"></i> willdurand-edu/cookie-playground](https://github.com/willdurand-edu/cookie-playground)
```bash
sudo add-apt-repository ppa:webupd8team/atom && sudo apt update;
sudo apt install git php atom
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
git clone https://github.com/willdurand-edu/cookie-playground.git
php composer.phar install
php -S localhost:4000 -t .
atom .
```
* tracker exposes a dashboard at: http://localhost:4000/tracker/public/dashboard.
......@@ -73,6 +66,7 @@ atom .
* cross domain
* accès à l'historique des sites visités utilisant flash
## Space cookies
* [Zombie cookie](https://en.wikipedia.org/wiki/Zombie_cookie)
......@@ -83,3 +77,4 @@ atom .
* [<i class="fa fa-github"></i> samyk/evercookie](https://github.com/samyk/evercookie/)
* [Cookie de tracking / assiste.com](http://assiste.com/Cookie_de_Tracking.html)
* [Using HTML5 Local Storage vs Cookies For User Tracking ...](http://johnsteinmetz.net/blog/using-html5-local-storage-vs-cookies-for-user-tracking/)
## Vault en bref!
![vault](../cri/images/vault.png "vault")<!-- .element width="30%" -->
#### Des secrets, des apps, des tokens, des équipes, un séquestre
## Vault
* By HashiCorp
* [écrit en go](https://github.com/hashicorp/hcl)
* cross plateform
* [hcl](https://github.com/hashicorp/hcl)
* intégration avec [consul](https://www.consul.io) & [terraform](https://www.terraform.io/)
* [auditable](https://www.vaultproject.io/docs/commands/audit/enable.html)
* [documenté](https://www.vaultproject.io/docs/)
* ... couteau suisse
## Vault
* Un binaire [vault](https://releases.hashicorp.com/vault/) qui fait
* serveur
* [<i class="fa fa-book" aria-hidden="true"></i> api](https://www.vaultproject.io/api/overview)
* UI web
* cli
```shell
$ export $VAULT_ADDR=https://10.0.0.1
```
## Configuration
`/etc/vault/vault.hcl`
```
backend "file" {
path = "/var/lib/vault"
}
ui = true
disable_mlock = true
listener "tcp" {
address = "10.0.0.1:443"
tls_cert_file = "/etc/certs/vault.crt"
tls_key_file = "/etc/certs/vault.key"
tls_disable = 0
}
```
## initialisation SSS
### Shamir's Secret Sharing
```shell
$ vault operator init -key-shares=3 -key-threshold=2
```
```shell
Unseal Key 1: 6gAO3lmAhIaHzDAdkK256g2B2Dpeqy+z4jqQCJBID3d8
Unseal Key 2: TO7DDRQXSPC3IQylPEBPjPGAGAGMzjEkjT/FL62m7UUd
Unseal Key 3: CYfEbt83jYsQFcSErHT4Y5NCsrEtfFUE6tjQZKfP632K
Initial Root Token: s.78MykQO2b5qcy03rtoNwmhr1
Vault initialized with 3 key shares and a key threshold of 2. Please securely
distribute the key shares printed above. When the Vault is re-sealed,
restarted, or stopped, you must supply at least 2 of these keys to unseal it
before it can start servicing requests.
Vault does not store the generated master key. Without at least 2 key to
reconstruct the master key, Vault will remain permanently sealed!
```
## Authentification
!["authentification"](../cri/images/vault-auth.png "authentification")
## Authentification
par token
```shell
$ vault login token=<root-or-app-token>
```
equivalent à
```shell
$ export VAULT_TOKEN token=<root-or-app-token>
```
par ldap
```shell
$ vault login -method=ldap username=mazenovi
```
stocke le token dans `~/.vault-token` et `$VAULT_TOKEN`
## Policy (ACL)
```
path "cri/*" {
capabilities = ["create", "read", "update", "delete", "list"]
}
```
écriture
```shell
$ vault policy write cri `/etc/vault/cri.hcl`
```
application à un groupe ldap
```shell
$ vault write auth/ldap/groups/cri policies=cri
```
création de token à partir de la policy
```shell
$ vault token create -policy=cri
```
## [<i class="fa fa-book" aria-hidden="true"></i> Secrets engines](https://www.vaultproject.io/docs/secrets/)
!["secrets engines"](../cri/images/vault-secrets-engines.png "secrets engines")
## workflow
```shell
$ vault secrets list
$ vault kv list cri/
$ vault kv get cri/test
$ vault kv get -format=json cri/test
$ vault kv get -format=json cri/test | jq .data
$ vault kv get -format=json cri/test | jq .data.data.root
$ vault kv put cri/test password2=$(date | sha256sum)
$ vault kv patch cri/test password1=$(date | sha256sum)
$ vault delete cri/test
```
## avec ansible
* lookup natif [hashi_vault](https://docs.ansible.com/ansible/latest/plugins/lookup/hashi_vault.html)
* lecture uniquement
* pas de support natif pour kv2 à ce jour
* module "community" [hashivault](https://github.com/TerryHowe/ansible-modules-hashivault)
* Reading and Writing
* supporte kv2
* Initialization, Seal, and Unseal
* Policy
* User Management
## UI
!["UI"](images/vault/web.png "UI")
!["carnets mots de passe"](images/vault/password_management.jpg "carnets mots de passe")<!-- .element width="80%" -->
......@@ -7,11 +7,11 @@
<title>Keepass</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- 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">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
......@@ -35,7 +35,7 @@
</div>
</div>
<script src="../../node_modules/reveal.js/lib/js/head.min.js"></script>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
......@@ -49,7 +49,18 @@
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/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ 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(); } }
]
......
......@@ -7,11 +7,11 @@
<title>Souveraineté</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/black.css">
<!-- 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">
<link rel="stylesheet" href="../../node_modules/@fortawesome/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="../main.css">
<!-- Printing and PDF exports -->
......@@ -35,7 +35,7 @@
</div>
</div>
<script src="../../node_modules/reveal.js/lib/js/head.min.js"></script>
<!-- script src="../../node_modules/reveal.js/lib/js/head.min.js"></script -->
<script src="../../node_modules/reveal.js/js/reveal.js"></script>
<script>
......@@ -49,11 +49,23 @@
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/markdown/markdown.js',
condition: function() { return !!document.querySelector( '[data-markdown]' ); },
callback: function() {
Array.prototype.forEach.call(document.querySelectorAll('section > li'), function(ele){
var fragIndex = ele.innerHTML.indexOf("--")
if (fragIndex != -1){
ele.innerHTML = ele.innerHTML.replace("--", "");
ele.className = 'fragment';
}
});
}
},
{ 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>
<script src="../main.js"></script>
</body>
</html>
<!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>
<!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>Vault</title>
<link rel="stylesheet" href="../../node_modules/reveal.js/css/reveal.css">
<link rel="stylesheet" href="../../node_modules/reveal.js/css/theme/white.css">
<link rel="stylesheet" href="../main.css">
<!-- 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-markdown="md/vault.md"
data-separator="^\n\n\n"
data-separator-vertical="^\n\n"
data-separator-notes="^Note:"
data-charset="utf-8">
</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>
# Profan
## RGPD
## RGPD
* Règlement général sur la protection des données
* en vigueur le 25 mai 2018
* Dans tous les états membres de l'UE
* En France la CNIL devient autorité de contrôle
* <strike>Déclaration CNIL</strike>
* tous responsable
* démonstration permanente du maintien de la conformité
## Périmètre
* Tout service ou sous traitant (y compris hors UE) traitant des données de résidents de l'UE
* Entreprises
* Associations
* Organismes publics
* Sous traitants
## Objectifs
### Crédibiliser la régulation
* Réclamation auprès de l'autorité de contrôle
* Droit de recours contre le responsable du traitement ou un sous traitant
* Actions collectives ou personnelles
* Sanctions
* 4% du chiffre d'affaire annuel mondial
* 20 000 000 €
## Objectifs
### Renforcer la transparence
* Quelles données sont collectées?
* Dans quels buts?
* Pour combien de temps?
## Objectifs
### Faciliter l'exercice des droits
* droit à la rectification
* droit à la portabilité
* droit à l'oubli
* suppression des données personnelles
* dès qu'elles ne sont plus nécessaires au traitement
* dès que le consentement de l'utilisateur a été retiré
* dès que la personne s'y oppose
## Objectifs
### Responsabiliser les acteurs traitant des données
* Obligation de moyens pour la sécurité des données
* Obligation d'information en cas de violation de données à caractère personnel
* Vis à vis de l'autorité de contrôle
* Vis à vis des personnes concernées
## Comment?
* DPO (Data Protection Officer) / DPD (Délégué à la protection des données)
* conformité RGPD
* Point de contact avec les autorités
* Analyse d'impact (PIA)
* [un logiciel pour réaliser son analyse d’impact sur la protection des données (PIA)](https://www.cnil.fr/fr/rgpd-un-logiciel-pour-realiser-son-analyse-dimpact-sur-la-protection-des-donnees-pia)
## Profan
* qui est le responsable du traitement
* L'UCA?
* Le CNRS?
* Le ministère de l'éducation nationale?
Réponse le 20 mars!
## Profan
* Quels sont les finalités du traitement?
* Le LAPSCO doit préciser
* cette information doit faire partier de la communication Profan dès la rentrée prochaine
## Profan
* exercice des droits
* les fonctionnalités sont implémentées
* Mesure de sécurité
* elles ont été listées
Plus généralement l'analyse d'impact a été largement entamé pour eP3c et peut être réutilisé pour Profan.
## à faire
* Déterminer le responsable des traitements
* Détailler (toutes) les finalités du projet
* Les communiquer clairement aux famille
* Adapter l'analyse d'impact à partir du travail réalisé pour eP3C
\ No newline at end of file