 J'introduis Ray avec Lock Picking in the IoT, ou pourquoi avoir un appareil piloté par Bluetooth n'est pas toujours une bonne idée, c'est parti. Bienvenue à tout le monde à Lock Picking dans le IoT, l'internet des choses qui n'étaient jamais censées être sur internet. Voici un premier appareil sur ce qu'on va faire. On va voir les bases du porno de hardware. Ensuite on va regarder un peu plus loin dans les circuits imprimés pour voir l'électronique. Ensuite on va s'intéresser à la communication sur l'internet. C'est la chose que tout le monde veut avoir dans sa machine à café. Ensuite on va voir ce qu'il en est de l'interface sans fil et des difficultés ou non de le détecter. Ensuite on va regarder comment on va faire pour faire du hacking depuis Android. Et donc je vais vous présenter les techniques pour Android mais il y a sûrement des choses pour iOS. Et enfin le talk sera fini. Donc première chose importante à dire, je veux dire que j'ai juste testé ça chez moi, je ne dis pas que ça marche partout, je ne dis pas que c'est une erreur générale par quelqu'un, je peux me tromper, je montre juste les résultats de mes recherches. Donc ça c'est ce qu'on utilise, ce dont on parle. Donc on a un périphérique qui est plus ou moins intelligent qui communique via Bluetooth avec votre smartphone qui lui communique vers le cloud. Donc ce n'est pas uniquement des cadenas. Là on parle de lock-picking parce que c'est ça à quoi on s'attaque mais ça peut être n'importe quel périphérique Bluetooth comme des ampoules. J'ai vu un certain nombre de rapports sur des ampoules qui n'utilisent aucune authentication donc vous pouvez vous connecter à l'ampoule de votre voisin pour changer la colonneur et vous pouvez jouer blink and lights chez vos voisins. Ensuite il y a les voitures, tout le monde parle de voitures. Donc elle n'utilise pas vraiment le Bluetooth Low Energy mais il y a des choses contrôlées par une application sur Internet. Ensuite il y a les vibromasseurs donc c'est du cyber-sexe non protégé, ça n'a jamais été aussi facile. Et ensuite des machines qui appuient sur des boutons. J'ai entendu ça hier et j'ai jamais compris à quoi ça servait. Donc c'est des appareils Bluetooth Low Energy avec lesquels vous pouvez communiquer et qui vont pouvoir appuyer sur des boutons. Voilà j'en ai un sur mon portable ici qui peut enfin appuyer sur la touche d'élite de mon clavier contrôlé par Bluetooth. On a testé l'authentification et ça n'a pas l'air d'être des formes d'authentification très compliquée. Donc les voitures, vous avez vu ce message des Tesla qui ont été hackés très facilement. Vous pouvez voir l'article qui était aussi sur Heiser. Donc on veut vraiment faire attention que tout soit mieux. Regardez l'exemple de la voiture. Ah oui c'est une voiture intelligente et on a même des couleurs. Donc qui ne voudrait pas voler une voiture comme ça ? La mauvaise nouvelle c'est que c'était pas vraiment hack. Ce qu'ils ont montré c'est que l'application est capable de démarrer la voiture. C'est dans le manuel. C'est dans le mode d'emploi. Mais qu'ils ont montré c'est que oui si je peux hacker ton téléphone je peux donc hacker la voiture. Oui mais on va demander le mot de passe. Mais peut-être que si j'avais ton téléphone je pouvais simplement installer une application fake et voler le mot de passe. Quelle surprise. Oui les applications devraient être protégées contre le reverse engineering. On peut hacker l'application sans même décompiler l'original. Oui bien sûr si on achète des applications qui ne sont pas sécurisées. Nos données ne sont pas sécurisées au niveau de Tesla. Conserver vos applaudissements pour celui-là. Parlons de fiscation. Certaines personnes peuvent comprendre ça d'une autre manière que moi. Moi je pense que la sécurité par le fiscation ne fonctionne pas. Mais les gens qui font ça pour l'argent veulent vendre leur développement et leur exploit. Les recherches indépendantes ne peuvent pas trouver des solutions aussi rapidement. Donc non, n'opusquez pas vos applications mieux. Mais créez une meilleure sécurité. Oui bien sûr qu'on peut démarrer une voiture mais c'est pas un problème de sécurité. Maintenant on retourne au cadenas parce que quand même on parle de crochetage de cadenas. Donc qu'est ce que font les cadenas ? Bien sûr on peut les ouvrir. La plupart du temps vous mettez quelque chose sous cadenas et vous communiquez avec votre cadenas via votre téléphone pour l'ouvrir. Parfois il y a un schéma en deux étapes avec un mode passe. Là on peut aussi communiquer avec des téléphones. On peut donner le code à quelqu'un d'autre pour leur donner la possibilité d'ouvrir le cadenas par exemple de mon garage à vélo pendant une heure. Donc ça c'est l'avantage qui est vanté par les vendeurs et à part ça d'être moins facile à ouvrir en crochetant la serrure vu qu'il n'y a plus de serrure. On pourrait aussi voir s'y messer dans le téléphone pour récupérer le mode passe et ouvrir le cadenas comme ça mais c'est pas à ça qu'on va s'intéresser. Qu'est ce qu'on pourrait faire pour attaquer ? On pourrait essayer de passer outre les restrictions de partage. Donc on pourrait ouvrir le cadenas après la révocation par exemple. On pourrait essayer de récupérer les clés en espionnant les communications. Ça c'est quelque chose qu'on va essayer. Ensuite on pourrait aussi essayer de relayer les codes. Donc on peut faire passer une autre application pour le cadenas qui va récupérer le code envoyé par le téléphone et ensuite renvoyer nous-mêmes ce code au cadenas. Donc cette fonctionnalité d'ouverture instantanée n'est pas la meilleure idée. Ensuite on pourrait faire des attaques directes sur les logiciels pour contrôler les cadenas. C'est une application logicielle donc il peut y avoir des dépassements de mémoire ce genre de choses. C'est à peu près la seule chose dont je ne vais pas parler dans cette présentation. Donc on va jeter un oeil sur le hardware. Donc si vous êtes un lock picker ou tout type de reverse ingénieur, il faut pouvoir démonter le hardware. Donc ici on a des astuces pour l'ouvrir, pour démonter. Donc ici on a juste besoin d'un cdnock, donc juste besoin d'un tournovis. Pour le master lock on a besoin d'enlever les rivets. Ensuite on a le dog and bone que j'ai depuis un peu de temps. C'est assez compliqué à ouvrir mais une fois que c'est ouvert il suffit de changer le pin à l'arrière. Donc voilà à quoi ressemble un oak. Donc on voit un PCB, on voit un moteur et si c'est dans la bonne position le cadenas va s'ouvrir. Donc c'est un SSDF de Michael Hupler, j'ai le lien à la fin de la présentation. Mais personne n'a trouvé de aucune manière de bypasser ce cadenas là. Ici on a le master lock qui est assez simple. Sauf qu'on a le moteur et l'instrument de verrouillage. On a deux CPUs, relativement standard. Donc ici les rivets, il faut les percer pour pouvoir ouvrir. Et ici on a le dog and bone qui est un peu plus grand et se démontre en tomates de pièces. Ce que j'aime bien c'est le moteur avec cette gear box qui on a énormément d'énergie dégagée sur un petit moteur comme ça. Donc comment ça marche, on a cet élément qui fait tourner les éléments de locking qui ouvrent le shuttle. A ressort sérieusement. Voilà on parle d'insérer un métal, forte pression pour ouvrir. C'est une méthode standard. On peut acheter maintenant des cadenas à 5 ou 10 euros qu'on ne peut plus ouvrir sous pression. Le dog and bone avec un ressort. J'ai vu après sur YouTube que des gens plus expérimentés avaient déjà fait la même expérience deux mois plus tôt. Donc ici on a la méthode sous pression. Mais ici c'est un cadena à 200 dollars contrôlé par Bluetooth. Donc pour un teaser, j'ai jamais dit qu'il n'y avait pas de bypass mécanique pour les master locks, j'y reviendrai. Maintenant pour l'électronique. Donc voilà le knock avec l'électronique donc il y a un point H pour contrôler l'électronique, le reste c'est plutôt standard. Donc un design assez simple. Voilà le master lock qui a deux CPU avec quatre boutons sur le PCB. Et là voilà les processeurs. Donc on voit déjà que c'est une plus assez courante le Nordic NRF 518-822. Donc il n'y a que le master lock qui utilise un MSP 430. Donc le NRF c'est un processeur ARM alors que le MSP 430 c'est un processeur de Texas Instruments qui a très basse puissance. C'était utilisé précédemment dans les cadenas non Bluetooth mais électroniques. Donc maintenant la programmation. Donc on peut utiliser n'importe quelle carte de flashage d'ARM pour s'interfacer avec le knock. Donc par exemple en utilisant OpenOCD. Donc il y a plusieurs suites d'outils pour utiliser ça mais voilà un exemple. Donc on a juste une interface pour se connecter à la puce et ensuite on peut regarder ce qu'il y a dans la mémoire flash. On peut pousser des modifications à cette flash. Donc le vieux master. On en a parlé il y a quelques années. Ils n'étaient pas très bien protégés. On pouvait changer le firmware. On pouvait récupérer les codes en regardant ce qu'il y a dans la mémoire flash. J'en ai pas fait un cadena mais je l'ai transformé en jeu de Simon. Je vais dire malheureusement le knock était protégé en lecture. On ne pouvait pas accéder au code sans ouvrir le cadena. Il était protégé en lecture et je me suis dit que décompiler le firmware c'était compliqué et donc j'allais laisser ça de côté. J'ai juste utilisé des cartes de développement. Maintenant parlons des choses intéressantes. La communication avec le cloud. Donc votre téléphone parle avec des serveurs qui sont mis à disposition par le vendeur de hardware et on utilise des liens web ouvert par HTTP. Donc l'application on voit des données de login récupère des informations sur les clés et donc l'application peut lire et partager toutes les informations sur les cadenas. L'application peut aussi envoyer des informations si vous partagez les informations de votre cadena avec d'autres personnes et donner d'ouverture et de fameux. Bien sûr tous les events sont envoyés par le lien. Oui mais certaines personnes diraient mais TLS c'est sécurisé. Oui bien sûr. Mais on a toujours des lits. Ça c'est le problème. C'est à toi. C'est toi qui possède le téléphone et c'est toi qui contrôle l'application et tu peux même modifier l'application. Mais c'est toi qui possède les certificats et le trust qui peut nous prévenir de modifier l'application. C'est vous qui posséde l'application donc rien ne nous empêche de modifier l'application. Et la belle chose, ce que j'essaie de vous expliquer à tous ici, ces choses ne sont pas compliquées et c'est des outils sympas, originaux. Si vous avez une app qui fait des choses, regardez ce que votre application fait et regardez comment communique l'application. Des fois c'est intéressant de voir comment votre téléphone communique avec Google tout le temps. J'ai réalisé que certaines de ces applications parlaient avec Facebook à chaque fois qu'elle s'est députée. Vous avez par exemple un utilitaire simple qui s'appelle MTIM Proxy, qui est disponible à peu partout et qui marche sur tous les systèmes. Ça agit comme un proxy web. Il crée des faux certificats à la volée. On crée des certificats qui ressemblent aux vrais certificats mais avec une autorité de certification fausse. Ensuite il y a juste à configurer l'application Android pour utiliser le PC et c'est l'affaire d'une demi-heure. Voici à ce que ça ressemble. Il y a quelques requêtes postes à l'application. Ensuite là on voit quelques erreurs 403, je ne sais pas trop où ça vient, mais voilà ce que ça fait au démarrage. Donc on peut regarder maintenant ce qu'il y a dans les requêtes et ça c'est par exemple un bon esté pour récupérer le Mode Pass. J'ai flouté le mien là. Ça marche aussi avec votre Mode Pass du Play Store. N'importe quelle application qui se connecte au cloud, vous pouvez utiliser cette méthode pour essayer de récupérer le Mode Pass. Depuis cette application vous récupérez les données et donc pour les cadenas vous récupérez un jeton de contrôle. Qu'est-ce qu'on récupérait ? On a aussi une commande GetLocks qui nous permet de récupérer de l'information sur nos cadenas. Donc il y a une clé. Donc le 0 à 3 7 c'est quelque chose qu'on va revoir plus tard. Ensuite il y a une URL pour une photo. Donc si j'ai plusieurs cadenas, ça peut me montrer à quoi il ressemble. Et ensuite ça c'est un code pour déverrouiller le cadenas en appuyant sur le cadena lui-même. Donc si c'est mon cadena, ce n'est pas un problème. Si j'ai cette impréhension, de toute façon je sais l'ouvrir. Ensuite il y a autre chose, il y a les shared locks, donc les cadenas partagés. Donc on a une date de début et de fin. Donc ce cadena a une clé, à une adresse Mac. Et la chose intéressante, c'est que le cadena n'a pas de référence temporelle. Donc tout ce dont j'ai besoin c'est cette clé. Et ce qui est bien, c'est que j'ai pas non plus besoin de manipuler l'application. Je peux utiliser Amigate M Pro Psi pour remplacer les données à la volée. Donc je peux lui demander de remplacer 2016 par 2066 dans l'application. Et donc le cadena va se dire ah mais en fait il n'y a pas de soucis. Donc le NOC était un petit genre donc il va vérifier en ligne. Donc un cadena partagé vous pouvez l'utiliser que quand vous êtes en ligne. Et donc il y a une vérification en ligne pour savoir si on a le droit de déverrouiller ou pas et le serveur répond. Mais bien sûr on peut aussi rendre ça factice et faire une fausse réponse. Donc si je veux hacker le cadena, j'ai pas besoin de me connecter à internet. Je peux faire ça en ligne. Donc le protocole est cassé rien qu'avec MTM Pro Psi et comme dit, c'est pas très difficile. Donc si quelqu'un partage un cadena avec vous, un NOC, vous pouvez avoir la clé et n'importe qui peut l'utiliser. Vous avez même pas besoin de la changer. Une chose qui est positive avec cet architecture, les clés qui sont utilisés pour partager, ce sont d'autres clés par rapport à celles que vous utilisez pour reconfigurer le NOC, le cadena. Donc vous ne pouvez pas les reconfigurer ou fermer le cadena. Vous avez besoin d'un accès physique pour ça. Donc il faut avoir accès physiquement au cadena. On ne peut pas le faire de manière logicielle. Donc pas vraiment, ça aide pas vraiment. Donc pas vraiment intéressant pour les idées de bike sharing par exemple, de partage de vélo. Donc c'est une chose à garder en tête quand on utilise la fonction de partage par rapport au dumping des firmwares. Donc pour le dog and bone, je n'ai même pas essayé de dumper le firmware, mais il m'a envoyé sur une URL qui me permet de télécharger le firmware. Encore une fois, je ne considère pas ça comme une vue, une horabilité parce que si je peux accéder, enfin si je possède le cadena, je dois pouvoir accéder au firmware. Donc si vous voulez jouer et reverse engineering le firmware, c'est assez facile ici. Donc pourquoi pas si vous possédez le cadena, pouvoir jouer avec et avec le firmware. Donc maintenant on veut aller un peu plus loin. On veut aller au niveau du Bluetooth à faible énergie. Donc la communication entre le téléphone et le cadena pour mon vibreur ou autre chose. Donc le Bluetooth basse énergie et plus récent mais plus simple à asniffer que le Bluetooth standard. Donc il y a beaucoup de tutoriels sur YouTube pour apprendre un peu comment ça fonctionne. Les modes de sécurité les plus utilisés sont aucune et ad hoc ou autrement dit quasiment rien. Et si vous avez les codes d'appareillement, vous connaissez tout et ils sont pas fréquents et souvent pas très long. Donc ça a été amélioré mais pour l'instant les améliorations sont pas très utilisées. Donc il existe un certain nombre d'outils pour jouer avec du Bluetooth. Donc par exemple ceux qui sont listés là où vous pouvez fabriquer le votre. Donc ça c'est le point d'entrée du Hackerspace. Sinon je recommanderai le sniffer à dafrute qui est disponible pour 30 dollars. C'est pas un gros problème. Donc l'option vraiment pas cher c'est de récupérer quelques cartes comme celle-là depuis la Chine. Récupérer une carte STM32. Vous pourriez utiliser aussi n'importe quelle interface USB verserie FTDI. Donc là vous en avez pour à peu près cinq dollars. Donc à propos de cette recherche, il y a eu par exemple Rose Ramsey qui a présenté ça à Defconn où il a analysé un certain nombre de cadenas. Et donc on s'est rendu compte qu'il y avait beaucoup de mots de passe en clair dans un certain nombre de cadenas. Je dis pas que c'est vrai mais c'est ce qu'il a dit dans sa présentation. Ensuite il y a un certain nombre d'attaques où il suffit de renvoyer les mêmes codes. Et il a montré cette slide à propos des cadenas non craqués. Et il a parlé du NOC. Donc là il y a ce que je vais présenter. Donc NOC savait que le cadena était complètement cassé. Mais pourtant en voyant cette slide ils ont publié qu'il était sûr comme cadena. Donc peut-être que les gens du côté réseau sociaux ne sont pas très proches du côté technique. Donc le plus simple c'est d'utiliser ce logiciel via Windows. C'est le plus simple. Ça doit être possible de le faire autrement mais c'est le point le plus simple. Donc il suffit de dire je veux sniffer ce périphérique là. Et ensuite il suffit de regarder les gros paquets. Donc ici on a une chaîne de caractère qui a l'air complètement aléatoire. Donc on a une communication d'abord du téléphone vers le NOC et ensuite du NOC vers le téléphone qui a l'air chiffré. NOC a dit qu'ils utilisaient AES 128. Donc j'ai même pas essayé de déchiffrer parce que de toute façon si c'est vraiment ce qu'ils disent ça ne servira à rien. Donc on va laisser de côté le sniffing pour l'instant. On ne peut pas accéder à ces données. Et donc pour le NOC on peut rien faire pour ça. Donc on va voir comment on peut hacker l'application. Donc il y a différentes approches. La plus simple, enfin pas la plus simple, la première qu'on a fait c'est de manipuler l'application. On peut avoir un APK relativement facilement. C'est très simple, c'est quelques commandes chènes. Ensuite on peut désassembler avec Smali, avec un désassembleur comme Smali, changer les URL, changer les valeurs et réassembler le code. Ce qu'on peut faire c'est utiliser des certificats à self-sign. Ce qu'on peut faire c'est utiliser des certificats à self-sign. Donc on a des réponses JSON qu'on peut facilement pirater et acquis leur serveur. Pas se connecter à leur cloud pour pouvoir se connecter à son propre serveur, à son propre cloud. C'est déjà arrivé dans d'autres sociétés. Si le serveur disparaît, le hardware disparaît. Si vous chiffrez vous-même, vous pouvez savoir avec quel hardware vous travaillez et où le hardware se produit avec le cloud. L'autre point c'est qu'on peut décompiler l'APK avec ADB. On peut décompiler avec un décompiler comme JADX et les services online en utilisant upload APK ou avec le zip source. C'est très simple d'uploader les APK et récupérer le code source. On peut gripper. Donc on était en train de chercher AES, n'est-ce pas ? Tout le monde rigole en voyant cette slide. Donc il y a deux choses à mentionner. Ce n'est pas toute notre recherche, c'est le début. Cette clé est vraiment stupide parce qu'ils ont utilisé les chiffres de 0 à 15 comme clé. Mais s'ils avaient utilisé n'importe quoi, on l'aurait trouvé quand même. C'est moins sécurisé qu'une autre clé. Mais quand même, on l'aurait trouvé dans le code source. Donc le cadenas a besoin de la connaître. L'application a aussi besoin de la connaître parce que c'est une clé partagée. Mais c'est quand même un peu stupide. Donc maintenant, la question est comment est-ce qu'ils utilisent AES ? Est-ce qu'il y a un vecteur d'initialisation ? Je ne sais rien. Maintenant, je me suis rendu compte que c'était un seul bloc. Donc si on prend le bloc qu'on a vu tout à l'heure et qu'on passe AES dessus, on peut retrouver quelque chose avec nos nombres 42 qu'on avait mis dans notre générateur de nombre aléatoire. Et voilà, on a récupéré notre clé comme ça. Sauf que ça ne marchait que pour les deux premiers messages. Et en fait, du coup, ce qu'on voyait, c'est qu'il y avait seulement dans ces deux messages qu'un nombre aléatoire, le nôtre 42 et puis un nôtre qui venait de l'autre côté qui était vraiment aléatoire vu qu'on n'avait pas acquis l'application. Donc on s'est rendu compte qu'il y a aussi des components binaire dans l'application. Donc ces binaire ont été compilés probablement avec un compilateur C. Par chance, pour plusieurs architectures Android dont x86, je ne sais pas qui utilise Android sur x86. Mais l'avantage de ça, c'est qu'on peut le faire passer par un des assembleurs communs comme Obsh Dump. Donc je remercie E7P et Sec qui m'ont aidé avec ça cet été. Donc à partir de ça, on peut trouver l'échange de clé et finalement, ça a marché. L'assemblure est assez difficile à lire. Mais ici, on a ça et il y a des labels dedans. Ce n'est pas une vue de narrabilité comme dit, mais ça permet de comprendre plus facilement pour nous. Donc ici, cette fonction, elle appelle une fonction de déchiffrement AES. Et donc là, on a la routine qui s'appelle Create Session Key, c'est-à-dire création de la clé de session. Donc ça a potentiellement quelque chose à voir avec ce qu'on a vu précédemment. Et elle commence par une boucle. Donc ça, c'est quelque chose que les gens pourraient comprendre s'ils comprennent l'assemblure x86. Donc il copie et il fait des XOR entre des valeurs de différents tableaux. Donc ça, ce sont les quatre octets qu'on a vu précédemment. Donc 42, 42, 42, 42. Donc ils viennent du cadenas, on fait un XOR avec autre chose. Et donc ce qui se passe, c'est que l'application envoie des nombres aléatoires au cadenas. Le cadenas envoie des nombres aléatoires tout de l'application. Et ensuite, on calcule la clé de session avec le OU exclusif de ces deux nombres au milieu de la clé originale. Donc ce qu'on a, et nous, c'est notre 42, 42, 42. Donc avec une vraie application, ça serait une vraie clé aléatoire, mais ici ça sera plus simple. Et c'était plus simple pour nous de le voir, même si ça n'a pas aidé tant que ça. Ensuite, la valeur générée par le cadenas. Donc on fait l'exor entre les deux. Et ensuite, on ajoute ça simplement à la clé. Et je me demande bien qui pense que ça, c'est une bonne idée pour échanger des clés. Mais on peut faire l'opération de tête. Par exemple ici, on voit FD et on fait la somme avec 0,5 de tête. On sait que ça fait 0,2 avec le modulo 266 que j'ai mis là. Et en fait, la seule chose qui a changé dans la clé, ce sont les 4 octets au milieu. Donc ça, c'est une autre revue de l'herabilité. Même si pour une certaine raison, l'échange est fait à chaque fois, même si c'est fait à chaque fois que quelqu'un veut ouvrir son cadenas, cet enfoir, l'hommation doit être transmisée et calculée. Juste au cas où vous auriez vraiment pour une quelconque raison raté le premier paquet. Mais ça reste 4 octets changés dans la clé, donc on pourrait prendre l'ancienne clé et les modifier par brute force. Et je pense que c'est faisable sur une machine actuelle. Donc c'est pas l'échange de clés le plus intelligent qui soit. Mais même si on faisait mieux, vu qu'il n'y a pas de cryptographie asymétrique, ça ne rendrait pas la chose beaucoup plus robuste, parce que la clé doit être partagée à un moment. Et donc il faudrait revoir en profondeur le protocole pour le protéger du sniffing. Donc maintenant qu'on a cette clé, on peut vérifier ce qui se passe dans la suite. Donc maintenant, on a le message, on essaie de le décoder avec la nouvelle clé qu'on a. Donc là je pense que je me suis trompé en collant le message. Je m'excuse, là je pense que j'ai mis le mauvais. Donc ici ce qu'on a récupéré, ça se déchiffre en ce qui est en dessous. Donc on lit un code d'opération, ensuite on voit la clé de verrouillage, donc on l'a vu précédemment. Ça c'est la clé du cadenas. Donc on a récupéré la clé du cadenas depuis la communication et on a accès au cadenas. Pas de chance pour nos clés. Donc aussi c'est un des upcodes qu'on a, si on regarde dans la source de verrouillage, on a la fonction unlock, récupérer le niveau de batterie, remettre un code, faire un reset du cadenas, faire un update de firmware, ça promet. On peut aussi utiliser keyfox pour enébler le cadenas sans téléphone ou l'appareil. Le set quick code, par exemple, donc ça c'est les choses qu'on peut faire et on peut décrypter le message. Donc voilà une histoire des notifications du vendeur. Vous savez tout ce que le EasterHack, c'est à Pâques, donc c'était en avril. Noc a été informé en avril. Ils ont répondu, ils l'ont pris très sérieusement et ils nous ont dit instantanément, qu'ils aiment beaucoup la recherche, ils savaient que leur cryptographie n'était pas parfaite, mais le produit devait sortir. Et donc ils ont créé un nouveau protocole et on n'a pas les détails, donc on sait pas si le protocole est vraiment bien, mais au niveau de l'idée, ça avait l'air beaucoup mieux. Donc ils utilisent un nouveau bitologue qui n'est pas sorti encore, et on espère qu'il y aura le nouveau protocole dessus, ce qu'on n'a pas encore vu. On a un énorme update du mois de novembre où le bouton réquit et maintenant caché. Donc c'est l'option ou qui peut exclure quelqu'un de son propre canard par exemple. L'option est cachée. Mais ils m'ont dit qu'ils voulaient fixer ça en janvier. Donc, les locks sont toujours sécurisés, mais bon voilà. Sérieusement, 8 mois pour adresser une issue si critique. Donc si vous utilisez un Canon Nano comme ça, je veux quand même dire que j'aime beaucoup le hardware. Donc vous pourriez utiliser un FIAMAR Open Source avec votre propre crypto ou alors utiliser pour sécuriser des choses pas très précieuses, et faites attention que si quelqu'un sniffe votre communication, il l'a probablement voté code. Donc voilà ce qu'il en est du noc. Ce n'est pas encore tout à fait la fin, c'est le début de la fin. Donc maintenant on a encore un bypass mécanique qui nous reste. Vous vous rappelez que précédemment, j'avais dit que le Master Lock n'avait pas de bypass mécanique, mais si vous vous souvenez, il y a 4 ans au CCC. Donc on avait fait des tests sur le nouveau de l'époque Master Lock, avec un aimant puissant, et on a trouvé un mouvement particulier qui pouvait ouvrir le Canon. Donc il y a 4 ans on avait dit à Master Lock, oh on peut ouvrir votre cadenas juste avec un aimant, ce n'est pas très sécurisé, mais ça c'était un cadenas à 30 dollars, donc ça n'est pas très très grave. Et donc dans la nouvelle version ils ont changé des choses, c'est des choses qu'ils nous avaient dit à l'époque, c'était de rajouter un blindage, donc ce gros blindage ici, que j'utiliserais pour bloquer les radiations, qui prend la moitié de la taille du moteur et c'est censé aider. Donc on va voir. Donc voilà le Master Lock, on a un aimant plus grand, donc c'est un aimant beaucoup plus grand. En Allemagne on n'a pas le droit d'avoir, j'espère qu'on n'a pas le droit d'avoir de si gros aimants. Et donc maintenant on a un autre mouvement, avant on bougeait simplement l'aimant, il faut le retourner, mais on arrive quand même à ouvrir le cadenas. Donc ça c'est pas vraiment Zero Day non plus, vu qu'on a dit précédemment que le Master Lock n'était pas accrochetable non plus, et quelqu'un a dit à Defconn qui doutait de ça fortement. Donc j'ai décidé de laisser à Master Lock le temps de répondre, et en fait quelqu'un est venu me voir en disant qu'il venait à Defconn après le talk, en me disant que c'était Master Lock, qu'il était de Master Lock et donc je lui montrais ça, il a tout de suite filmé avec son téléphone et a dit qu'il a le notifié. Donc je vais dire que ça fonctionne pour moi, works for me. Donc j'ai un message pour tous ces vendeurs et ces créateurs de cadenas, n'essayez pas d'être intelligent, soyez intelligent. C'est pas si compliqué de créer un bon crypto-protocole. Vous avez probablement un mauvais crypto et ils le savent, et bien sûr si vous vous créez du hardware comme un cadenas, essayez de le créer avec des lock pickers intelligents ou des créateurs de cadenas qui savent, qui auraient pu leur dire que c'est vraiment quelque chose de, que le pas de lockers est vraiment très simple à mécaniquement. Il faut pas faire confiance à aucune connaissance électronique, le hardware doit fonctionner. Si vous avez trop de NDA, ils vont le faire et ils vont justement démonter votre matériel. Donc je pense que la société va assez bien, ils nous ont envoyé un cadenas avec protection magnétique et la fonction mécanique ne fonctionnait plus de manière magnétique, mais ils n'ont toujours pas réglé le problème de la crypto qui était mauvaise. Donc essayez vraiment d'être les premiers, de faire un software open source, comme pour une ampoule ou un vibromasseur. Maintenant c'est quoi cette slide, c'est le hacker geopardie, donc si vous voulez un hacker geopardie l'année prochaine envoyez un mail. J'ai entendu des gens qui organisent qu'ils sont assez vieux, donc ils ne sont pas au courant des trucs les plus récents que connaissent les jeunes. Désolé ça va être en anglais, mais il y a une page qui vous montre comment vous pouvez proposer vos questions. Et comme ça vous pourriez avoir un hacker geopardie à nouveau. Maintenant quelques liens, donc ça c'est l'outil zero day qu'on va utiliser ici. C'est un petit script Python qui a besoin de Python 3 et qui implémente cet échange cryptographique. Vous récupérez les valeurs depuis Viarchark et cet outil va vous dire ce qu'il y a dans l'échange. On va essayer d'ajouter plus de codes au fur et à mesure qu'on les décode. Sinon vous pourriez aussi le développer vous-même si vous avez envie, vous pourrez facilement ouvrir la canne. Donc voilà le papier si vous voulez vraiment regarder en profondeur, vous pouvez aller voir là. Ensuite un sneaker, un décompilateur pour le firmware et un article de blog qui montre comment compiler et décompiler des applications Android. Merci de votre attention. Si vous avez des objets intelligents et que vous voulez jouer avec, il me reste deux cartes de développement ici. Venez me voir à l'Assemblée UCCC et je peux vous prêter ma carte pour que vous puissiez jouer avec vos objets ou alors mener l'essai. Maintenant j'ai exactement 10 minutes je crois pour quelques questions. Merci beaucoup. Est-ce que tu as attendu tout à l'heure ? J'aurais besoin de te demander une faveur. Tu te souviens de celui qui parlait de sa machine à café Bluetooth ? Il faut qu'on en parle. On a des questions. Est-ce que vous êtes au courant de Kana Bluetooth avec une cryptographie décente ? Donc la réponse est pas que je sache. Il paraît que la sécurité du Dock and Bone est bien mais c'est pas très utile vu que le hardware est pas bon. Nock a dit qu'ils vont sortir une nouvelle version en janvier. Je vais essayer de leur demander ce qu'ils font parce que j'ai pas franchement envie de reverse engineering une deuxième fois. J'espère qu'ils vont simplement me dire ce qu'ils ont fait. Peut-être que le Nock est en train de devenir un peu plus performant et un peu plus sécurisé. Vous pouvez trouver le talk de Rose Ramsey en ligne. Vous verrez pas mal de Kana là-bas qui l'a attaqué. Désolé, j'en ai aucun recommandé. Je ne les recommanderais pas parce que si c'est pas open source, vous ne savez pas si c'est sécurisé ou pas. Peut-être rester avec vos anciens. Merci, c'était... De ce que j'ai compris, la plupart de ces périphériques sont communiques via le cloud. Et donc pour le coup, je pense que c'est un problème. Donc la réponse... Non, oui, on a toujours plus d'informations et plus de données dans le cloud. Mais open source ne veut pas dire que c'est libre à utiliser. Mais si vous avez des données confidentielles d'entreprise, oui, c'est bien de l'avoir en close source. Mais si vous développez une application avec laquelle les gens vont pouvoir débloquer leurs appareils, c'est quelque chose d'essentiel. Il faut que les gens puissent comprendre leurs objets. Si un expert ne peut pas regarder dans l'appareil, il ne peut pas le recommander non plus. Donc l'open source serait la meilleure solution. Surtout dans l'industrie du cadenas, c'est vraiment non commun. Les gens du monde classique ne comprennent pas la vision open source. Je me demandais si vous connaissez des cadenas qui annonçaient en broadcast leur présence. Est-ce qu'on pourrait se balader dans la rue et voir des cadenas comme ça ? Donc la réponse non, on n'a pas d'appareil vraiment, on ne peut pas se promener dans la rue et récupérer les broadcasts. Mais c'est assez de master locks. Un ami a essayé de faire du driving pour certains locks, mais ça ne fonctionne pas pour les padlocks comme ça. Mais bien sûr, on peut se promener et prétendre qu'on ait un cadenas et récupérer les gens qui ont des applications qui utiliseraient des cadenas. Et si une cryptographie forte comme AES et d'un autre côté un échange de clé faible pourra être lié à quelque chose comme la sous-traitance où ils auraient dit qu'ils ont besoin de sécurité mais sans donner de spécifications précises, et ça pourrait être une raison pour laquelle ça leur prendrait 8 mois de changer. Je ne peux que spéculer, mais c'est possible qu'ils n'avaient juste pas le temps. Mais quand on voit les campagnes Kickstarter, il y a toujours des problèmes de recevoir les appareils à temps, on reçoit des notes de délai sur le manufacturing, etc. Ça peut être pression temporelle, mais ça peut aussi être un problème de manufacturing ou de développement. On utilise, tout le monde prétend utiliser AES. Oui, c'est utiliser AES, mais il faudrait utiliser des implémentations correctes. C'est de la AES 128, mais complètement insécure quand même. Les gens prétendent utiliser AES, mais ce n'est pas assez, il faut connaître l'intégralité du protocole. Et ça n'était pas le cas ici. Maintenant, une question d'Internet, en conséquence de la question précédente. Est-ce que ça suffirait d'avoir de l'AES accéléré par hardware ? Ça pourrait être utile si on a un chip comme un microchip, si on a une clé qui doit être secrète et qui ne doit pas être extraite, ces clés peuvent être... Donc si vous avez une puce comme ça, on pourrait quand même l'attaquer par pas mal de canaux. Une bonne idée, ça va plutôt d'utiliser de la cryptographie asymétrique. Et là, maintenant, ça serait une bonne idée de passer à de la cryptographie asymétrique avec du hardware. Comment on pourrait fabriquer un Kana qui n'est pas vulnérable à l'attaque que vous avez montré en bougeant un aimant ? Deuxième question, il y a un Kana annoncé qu'il n'y a pas de source d'énergie. Je connais un Kana électronique où la batterie est dans la clé et vous mettez la clé à proximité et c'est la source d'énergie. Vous avez un bouton sur lequel vous pouvez appuyer et qui génère suffisamment d'énergie pour alimenter le Kana. Est-ce que vous pouvez répéter la première question ? Je demanderais comment on pourrait protéger le Kana. Je pense qu'on sait comment Nook l'a fait et je pense qu'ils n'ont pas fait intaciellement. On peut pas ouvrir le Nook parce que l'actuateur mécanique est aussi magnétique. Dans le master lock, le matériel utilisé n'est pas magnétique et le remplacer par un matériel magnétique pourrait aider. C'est vraiment quelque chose de très difficile parce qu'on avait déjà des Kanas dans le passé qui étaient attaquables de cette façon-là. Donc, faire une mécanique ou une électromécanique sécurisée, c'est vraiment quelque chose de difficile. Vous avez parlé à un moment d'application open source intelligente et que personne ne le faisait et vous avez encouragé à être les premiers à le faire. Il y a quelqu'un qui fait ça sur github, c'est QDOT, si vous voulez en savoir plus. Ils ont plusieurs dépôts sur github à propos de leur technologie. Merci pour cette pub. Je dois admettre que je ne connais pas les autres domaines, moi je parle surtout du Kana. Si vous avez d'autres questions, je serai à l'Assemblée Musicitie et merci encore.