Archive | Crypto

Débug ton HTTPS avec Wireshark

Vous aussi vous avez eu besoin d’aller déchiffrer un flux HTTPs pour un coup de débug ?
Ca n’a jamais été aussi facile.
Même plus besoin d’aller « emprunter » une clef privée sur un serveur ou de se mettre dans la peau de « l’homme du milieu » (souvenirs de galères avec sslstrip or mitmproxy).

1 – Tu définis ta variable d’environnement SSLKEYLOGFILE pointant sur un fichier local que Firefox/Chrome détectera au redémarrage et qui va servir à stocker les pre-master keys

2 – Tu renseignes le chemin vers ce fichier de stockage des pre-master keys dans les préférences SSL de Wireshark

3 – Tu ajoutes ton filtre Wireshark de capture entre ton poste et le serveur cible

ip host 87.98.170.232 and ip host 192.168.1.102

4 – Feu patate !

Toi aussi rigole avec Wireshark

Toi aussi rigole avec Wireshark


Merci qui ? Merci Jim !

Ah oui, il faudra quand même que je regarde les cas où cela ne fonctionne pas … et que je détaille dans ce cas les vieilles alternatives.

Posted in Boulot, Clic, Crypto, HackCommentaires fermés sur Débug ton HTTPS avec Wireshark

En mode hacker…

Carburer au Club-Mate à Numa

Carburer au Club-Mate à Numa

Fin de semaine et WE très chargés entre Hack In Paris, Pas Sage En Seine et Nuit du Hack

De bien belles rencontres et quelques moment de répit à Numa.

Je vous raconte sous peu !

Le badge #NDH2k15

Le badge #NDH2k15

Posted in Crypto, CyberDefense, FêteCommentaires fermés sur En mode hacker…

Ton coeur saigne en 2014 !

Ce billet m’est largement inspiré par l’article Wikipedia version anglaise ainsi que par ma traversée attentive de l’évènement qui m’aura permis de revisiter TLS, les sockets Python et TCPDump.

Je sais, comme dirait ma mère à @turblog : « pffff, c’est compliqué !« . Mais, je peux vous éclairer.

J’avais par ailleurs publié dès le 11avril sur le site d’Alliacom mon analyse à chaud de la situation.

Ce post servira de trame à notre Afterwork Alliacom du jeudi 24 avril 2014 à 18h00.

En l’écrivant, je me remémore curieusement / furieusement une vidéo de Julien Codorniou à CONF@42 – Facebook – Why hackers will rule the world et la nécessité d’être un peu DEV pour comprendre le monde d’aujourd’hui. Nécessité de l’être même davantage si on ne veut pas que le gimmick se transforme en Why hackers will ruin the world !

Heartbleed déà oublié, what else ?

Heartbleed déà oublié, what else ?

Chronologie :

  • Janvier 1999 : RFC 2246 on passe de SSLv3.0 à TLS1.0
  • Février 2012 : RFC 6520. L’extension Heartbeat ! Un des gros soucis de TLS, la phase de négociation aussi appelée handshake est très consommatrice  en ressources, on crée donc une extension pour garantir qu’une connexion est toujours vivante (keep-alive). Simple échange de messages entre les 2 pairs détaillé sur son blog par Stéphane Bortzmeyer dès 2012. Il aurait pu nous prévenir de la faille 🙂

« Heartbeat fournit un moyen de tester et de maintenir vivante un lien de connexion sécurisé sans être obligé de renégocier une connexion« .

  • 31 janvier 2011 : Robin Seggelmann réalise le comit fatal, en implémentant Heartbeat au sein d’openSSL. Beaucoup d’annedotes invérifiables pas forcément glorieuses pour l’auteur circulent sur internet sur les conditions de cette réalisation.
  • 14 mars 2012 : openSSL v1.0.1 est publiée. Cette version est la première à intégrer le bug.
  • 3 décembre 2013 : réservation du CVE – 2014 – 0160 sur le site du MITRE, par qui ? pour quoi ?
  • 21 mars 2014 : Bodo Moeller et Adam Langley de Google publient un patch corrigeant le bug découvert auparavant par Neel Mehta membre de l’équipe sécu de Google.
  • 31 mars 2014 ; CloudFlare patche ses serveurs après avoir été mystérieusement averti et avoir signé un accord de non-divulgation.
  • 1er avril 2014 : Google notifie openSSL de la faille.
  • 3 avril 2014 : Codenomicon, une société de cybersécu finlandaise rapporte à son tour le bug qu’elle signale au CERT finlandais.
  • 7 avril 2014 ; la version 1.0.1g d’openSSL intégrant le patch est publiée.
  • Dans la nuit du 7 au 8 avril,  Cloudflare sur son blog et Codenomicon (qui a imaginé le nom de la faille et dans la foulée déposé le nom de domaine heartbleed.com) lancent le buzz volant la vedette à Microsoft qui devait être ce même jour sur le grill du fait de l’arrêt de maintenance pour Windows XP.

 

Le bug :

  • Une bonne démonstration technique de la cause sur le blog de Lexsi ou sur le site de The Register. Il s’agit en termes techniques d’un très banal buffer overflow.
  • Une présentation très pertinente de DenyAll sur le sujet.
  • Les versions impactées : 1.0.1 à 1.0.1f, la version 1.0.1.g étant la version patchée.
  • En raccourci : le bug vous permet de voler le contenu de la mémoire du serveur vulnérable auquel vous vous connectez par paquets de 64 Ko.
  • Une explication simplifiée en images:
Heartbleed simplifié en images humoristiques

Heartbleed simplifié en images humoristiques

  •  Ne pas oublier que le bug est une faille d’implémentation et ne remet absolument pas en cause TLS.
  • Cette faille apparait très tôt après le gotoFail d’Apple et les déboires de GnuTLS.
  • Microsoft et Oracle (Java) traditionnels gros pourvoyeurs de failles en tout genre rigolent doucement de la situation car non touchés par leur implémentation.
  • Vous voulez la liste des produits impactés ? 
  • Conduite à tenir pour les utilisateurs des systèmes vulnérables : changement de mot de passe après patch du site impacté, révocation des certificat après regénération de clefs.

 

 Les riques :

  • Vol de mots de passe, clefs privée, numéro de CB, …
  • Ecoute d’échanges numériques.

 

Démonstration :

  • Sur des sandboxes internes à Alliacom
  • Sur des sites non patchés  ahhh non ça c’est interdit 🙂
  • En utilisant les démonstrateurs plus ou moins faibles/fiables en ligne.
  • Cloudflare challenge : 4 personnes ont réussi à récupérer une clef privée sur un serveur de tests. Cela leur a demandé de générer entre 200 000 et 2 500 000 requêtes. 
  • Limites : exploits basiques largement diffusés mais outils d’attaque pertinents rares et complexes. Il est amusant de constater que dans un tweet du 7 avaril, Adam Langley pensait qu’il n’était pas possible de voler une clef privée.
doztlsbleed

doztlsbleed

 

Conséquences :

  • Depuis mars 2012, vos mots de passe de 47 caractères dont 13 caractères spéciaux ne vous protègent pas de grand chose.
  • NSA au courant  (on me dit dans l’oreillette que Vupen revend l’exploit depuis 18 mois  Bad joke !) ? Théorie du complot ?
  • Sale temps pour les bibliothèques SSL (Apple et GnuTLS).
  • Coup de mou et stress test pour les autorités de certification et les CRL qui explosent.
  • Tests non fiables et sécurité en carton (attention, rien ne remplace un audit de vos équipements et recherche d’utilisation d’openSSL par des professionnels)
  • 500 000 serveurs webs touchés (plus autant d’équipements réseau ?)
  • Je veux un IDS/IPS. Tu l’as vu passer mon \x16\x03\x02\x00 ?
  • openSSL => fork LibreSSL lancé par quelques membre de la communauté openBSD. La concurrence, ça dope la qualité ? En tout cas, ça fait maigrir : on parle de 90 000 lignes de code C supprimées.
  • Communauté opensource : des voix s’élèvent déjà pour critiquer la faible qualité d’openSSL qui a bénéficié de 800 $ de dons la semaine de la divulgation de la faille. Que se passerait-il avec du code propriétaire ? Personne ne serait au courant sauf ceux ayant découvert la faille après reverse engineering (ah non c’est vrai, c’est interdit …)
  • Autres victimes collatérales : découverte dans les produits de notre ami éditeur xxxxx de bibliothèques openSSL 0 .9.8a (antédiluviennes ? = avant le bug de l’an 2000 ) datant de 2000 et farcies de failles … mais non vulnérables à Heartbleed !
  • Non, SSH n’est pas concerné !
  • Nous, Alliacom ? Par exemple, comment utiliser SPLUNK pour détecter ce genre d’activité suspecte.

 

Questions en suspens :

  • Pourquoi cette date de création de l’entrée CVE – 2014 – 0160 sur le site du MITRE (2013-12-03) ?
  • Je fais comment pour lire précisément telle ou telle zone mémoire ?
  • A qui le tour ?
  • Rappel d’une question du FIC 2014 : La cybersécurité est-elle un échec ?
    CVE MITRE 2014-0160

    CVE MITRE 2014-0160

Vous reprendrez bien un peu de Python ?

Vous reprendrez bien un peu de Python ?

 

TLS Handshake

TLS Handshake

Posted in Boulot, CryptoCommentaires fermés sur Ton coeur saigne en 2014 !

PGP et moi (au cas où …)

empreinte : B9F96D84B8B5F579113FA2A553F29E523398629C

keyID : 3398629C

clé publique : 

—–BEGIN PGP PUBLIC KEY BLOCK—–
Version: GnuPG v2.0.21 (MingW32)

mQINBFLqeuoBEADBlkR2zhicXPh/UvL7mmwJFh1RBtKorLi4ZucldDjsCfaqo39b
M4Slj3vQq4/dQpyQCoz/LtUh3L3PI6HoTpYcdAqY+hyO+8Mb/BCGrKdMA8GnVMNu
l6bDdc45UyCFdWPht95grNet5MHn6e8xRBuaLhNi65rw3dsYfa3qu8c/bc3PxlhK
1n5133eKM11+nOTkvkEzrCr+8ne6o4vobcVKLXV/HNzq1pAC/8guuxePe8HaxRAi
vvewTH2cwUh/HfGOaUv+xIuLg2i7l+3h/l6YJye+RgFOlqM5ZpTpSm6+xrUMrj7V
mhCwWuS7AUvFzmqw6g0eXPieDPEcncKrs5eyJxaLWpC5ljlwECkqVw4t1y8Y8wT2
8sZWRSJocQJTgynC9BRwOA0/gvAqgUu4i6rXG6NXznKsLtQP0C3tqwOB5rjHP+52
u+UjKy2pfXK5OV7hNfg11ytTnop6/321tx3AMV3VBGi/RpGzVDnjvVkaMiB6P/Zx
6xRji6e6m+THaW8aYctpAUjjCOW6W3Qp+x50k3DQxZQcj5TJbLa/8ffgd9s+6TkQ
cACtlsUP+QfiQi0oepDZ2n4Ew1+dqHOTD2+ZIH2+7QF428BmTGBYuEhYP8ztNSpr
D3GEtq1tarIFugmYIb7wzkSqMjldWEUTN9k0BjM0xjyvbqeWyH/2lIMUaQARAQAB
tDRMYXVyZW50IE1hcm90IChQR1AgZm9yIExNKSA8bGF1cmVudEBsYXVyZW50bWFy
b3QuZnI+iQI5BBMBAgAjBQJS6nrqAhsvBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQU/KeUjOYYpy4qQ/+OH5eQHTg1JapxuAxMXWiZZT1czztIYRpnbGpcvV2
GOMnV0dnupa1GkvVXCfr7zUpX0Gvv816PHplxo5C6k5PQH8Bb+c/rRGd6r7LkKWJ
FNYWPwl8a5vO7OUf3K77rnz7VnDVFG+Zt/GSB4UatvtPQ06/XmEFH28eSi7h8dWP
Ib3m35QqtbsCigOLd+1XVZIInrGOidBZj4VQlE20a8wi3Yeoxmtl9kdss02zS+1k
F0e1g0IaVNpqy3XemH8EXXYK2UaD0iEsxkVcRhDzjpDvH71jCDPbWgZM45y2zUCg
m62yjoAWK73iiaiWANWpoSbgJgm3GSVX1Bvb5MQYoQL5lAusf40G2vz7kn7NQJif
yoItYsiYeq7Nb2DSkhEQyrU/uG56XXoxufm/U1jbeJCoH5qQEfC2HPrsdsDdUMKI
lK4TWRXFJPpYNqsoRcDGAIi7qGvhqeJYiofQWAF6tNtJVd+Kg1EEWPvhkrcBXE4i
4ckUdOUE2kYXMHQ90bO6sBl8l0bOCIxtztg+ieYEI2hOM97pWlLipi7rjaVXA26n
6jt45v14By+N2hlnKvtGVNJrKGcIlaKteAJa8f8CVgoFBgZdy8gd85ba5xeogEJ2
JTjXAr+lChM4l6SXUakFZcZ/TZoPbqwdgHYVR7rVrK5r4+UybfqAI6S0f9Qo/Zq3
p9c=
=iVje
—–END PGP PUBLIC KEY BLOCK—–

Télécharger B9F96D84B8B5F579113FA2A553F29E523398629C

Posted in CryptoCommentaires fermés sur PGP et moi (au cas où …)

Comment peut-on débiter autant d’approximations sur certificats et PKI ?

Le visionnage de la vidéo suivante m’a fait hérisser le poil. Outre le titre pompeux, on y retrouve un joli florilège d’assertions incorrectes.

Heureusement, les détails donnés sur les possibilités de sauvegarder de manière sécurisée une clef privée sous Android sont très pertinents.

conf Pki sous Android

conf Pki sous Android

http://www.infoq.com/fr/presentations/pki-android#

Décryptage (si je peux dire) à venir …

1 – NON, un certificat ne contient pas deux parties et surtout pas de clef privée : un certificat numérique (que l’on devrait plutôt appeler certificat de clef publique ou certificat X509) est PUBLIC et ne contient que la partie publique du bi-clef plus les informations relatives à l’entité qu’il représente [3’02] 

2 – NON, il n’y a pas que RSA pour la crypto à clefs publiques (ECC, vous connaissez ?) [2’50]

3 – NON, une PKI ce n’est pas juste une histoire de clefs et de certificats [2’32]

Avec autant de raccourcis et d’approximations on maintient le non-technicien dans un état d’incompréhensions parfois bien utile …

Posted in CryptoCommentaires fermés sur Comment peut-on débiter autant d’approximations sur certificats et PKI ?

My very first LOLCAT

merci à Louloute, au Chevalier Paul et à Alliacom de m’offrir cette opportunité 🙂

 

Louloute, Chevalier Paul et alliacom.com

Louloute, Chevalier Paul et alliacom.com

 Flyer réalisé à l’occasion de ma présentation sur les certificats numériques le 12 décembre 2013 chez Alliacom.

Assez drôle, la perception de cette image par mon entourage personnel (cobayes) et professionnel.

LOLCAT n’évoque absolument rien pour personne… je ne vais pas fanfaronner car Wikipedia me sauva quelque mois plus tôt de pareille ignorance. Et l’on mesure alors l’espace sidéral (sidérant ?) séparant le commun des mortels (y compris génération Y ou autres pseudo digital natives) des purs et durs de l’Internet.

 

Posted in Crypto, Trop sérieuxCommentaires fermés sur My very first LOLCAT

Lectures du jour : Diffie devant la Cour et Cicada 3301

La crypto est partout… Je ne vais pas vour parler de Pergame ou de l’influence de la LPM sur la vie privée mais j’ai adoré ces deux articles sur le procès Newegg vs TQP auquel témoignait Whit Diffie (le D de ECDHE cher à Twitter et sa formward secrecy de ces derniers jours)

http://arstechnica.com/tech-policy/2013/11/newegg-trial-crypto-legend-diffie-takes-the-stand-to-knock-out-patent/

Malgré le concours de Diffie, Newegg rique fort de passer à la caisse …

La perle du procés : la déposition de Diffie :

« We’ve heard a good bit in this courtroom about public key encryption, » said Albright. « Are you familiar with that? »

« Yes, I am, » said Diffie, in what surely qualified as the biggest understatement of the trial.

« And how is it that you’re familiar with public key encryption? »

« I invented it. »

 http://arstechnica.com/tech-policy/2013/11/jury-newegg-infringes-spangenberg-patent-must-pay-2-3-million/

http://www.telegraph.co.uk/technology/internet/10468112/The-internet-mystery-that-has-the-world-baffled.html?utm_content=bufferbb5ee&utm_source=buffer&utm_medium=twitter&utm_campaign=Buffer

Posted in CryptoCommentaires fermés sur Lectures du jour : Diffie devant la Cour et Cicada 3301

MOOC Canvas Arithmétique, en route vers la cryptographie

attestation mooc arithmétique / crypto

attestation mooc arithmétique / crypto

Voilà , c’est fini comme dirait Jean-Louis (celui qui nous ressert la même chanson depuis 20 ans, pas l’assistant préparateur de Claude Legendre ! )

Bien content que cela se termine car à raison de 3 heures par semaine environ ces six dernières semaines c’est quand même un investissement conséquent.

Je conclus donc plutôt brillamment puisque j’ai finalement eu 90,9 % de réussite aux quizz et challenges. 

Arithmétique: en route pour la cryptographie

Université Lille 1

Quelques petits regrets: j’ai abordé le MOOC dans l’esprit « Il faut que réussisse ». Du coup j’ai surtout bossé les réponses aux quizz et la réalisation des challenges, plus que le coeur du cours. De même, je n’ai pas trop creusé Python, m^me si c’était l’occasion.  Très souvent j’ai fait mes algo en java. Bref j’ai essayé de faire au plus efficace avec mon bagage.

Pour ceux qui s’attendaient à y trouver une ressource plus opérationnelle, la formation s’attarde peut-être un peu trop sur l’aspect historique de la crypto : César,  Vigénère et Enigma au détriment de ce qui sert vraiment aujourd’hui. J’ai en ce qui me concerne bien apprécié ces informations.

Dernier bémol : le forum n’est pas vraiment très agréable à utiliser.

Malgré tout, une expérience très intéressante avec une approche vraiment didactique : vidéos de cours et exercices (corrigés). Et une très grande interactivité avec les formateurs présent tout au long du déroulement.

Prochain MOOC le 9 décembre,  à l’occasion du  lancement de  « Comprendre les concepts des télécommunications » par Sud-Telecom Paris.

notesCanvas


 Quelques liens bien utiles / sympathiques  pour mémoire :

Exemple simple de mise en oeuvre de chiffrement/déchifrement RSA 

Algorithme d’Euclide étendu et calcule de clef secrète

Exponentiation rapide

 

 

Posted in Crypto2 Comments