29
août
'16

Super Minitel Entertainement System: bientôt un premier exemplaire !

Publié le 29 août 2016

Cela fait bientôt 3 ans que ce projet de Super Minitel Entertainement System traîne (enfin, surtout la prise en charge du clavier), et que je dois fournir 3 exemplaires aux soutiens du projet OpenIt. La conception a été laborieuse, mais est sur le point d'aboutir au premier exemplaire.

Des erreurs à la chaîne

La conception de la version 3 du circuit électronique d'adaptation pour Raspberry Pi a pris plus de temps que prévu, et ce à cause d'erreurs successives lors de la phase de prototypage et de réalisation.

Le circuit de départ qui m'a servi à la rédaction de l'article sur le Super Minitel Entertainement System a permis de valider le montage réalisant la conversion du signal vidéo produit en sortie par le Raspberry PI (S-Video) vers les signaux attendus par la carte vidéo du Minitel. La conception de ce circuit m'a permis de reprendre en main les outils de conception électronique assisté par ordinateur, et a été réalisée avec EagleCAD. L'outil n'est pas libre mais gratuit, et le résultat rudimentaire: le circuit était imposant, mono-couche et coûteux. Le coût de fabrication d'un circuit imprimé dépend du nombre de couches et de sa surface (grosso-modo). Le délai entre la commande d'un circuit imprimé et la réception dudit circuit dans ma boîte aux lettres est d'environ trois semaines, au mieux. Gardez cela en tête pour la suite.

Premier circuit imprimé d'adaptation vidéo

Lorsque j'ai démarré la conception de la version suivante, j'ai décidé d'y intégrer le support du clavier du Minitel. J'ai choisi de supporter le clavier via un driver logiciel et un interfaçage I2C, ce qui évite d'avoir un micro-contrôleur et la phase de programmation qui va avec. J'ai donc intégré le tout sur le circuit intégré, grâce à des composants permettant d'étendre le nombre de GPIOs du Raspberry Pi, et ait fait en sorte que le circuit puisse se brancher sur le port d'extension du Raspberry en respectant les dimensions. Autrement dit, j'ai du tout serrer pour que cela rentre dans l'espace requis. Et j'ai envoyé en fabrication. La conception n'a pas été réalisée avec EagleCAD mais avec gEDA, une suite de conception électronique libre et opensource.

A la réception du premier circuit, je soude l'ensemble des composants sur celui-ci (il faut compter une bonne heure de concentration afin de limiter les erreurs), et le teste en conditions réelles sur le Minitel. Echec lamentable, le rendu est désastreux. Il s'avère que les empreintes des transistors utilisées pour concevoir le circuit imprimé n'étaient pas correctes (merci gEDA), et ceux-ci étaient montés à l'envers ! De plus, plusieurs pistes n'étaient pas correctement placées (on parle alors d'erreur de routage), et il m'a fallu en couper certaines et en ajouter d'autres à l'aide de fils ("straps"). Enfin, les trous pour placer le connecteur du clavier du Minitel étaient trop petits. Bref, deux ou trois jours de débogage de circuit et de nuits passées à identifier la cause de problèmes, pour enfin arriver à une version fonctionnelle. Victoire !

Version corrigée du circuit imprimé pour Raspberry Pi

Je reporte ensuite les corrections sur le logiciel de conception, et envoi en fabrication une version normalement corrigée. Sauf que non, les trous du connecteur de clavier sont encore trop petits (mauvaise mesure), et quelques corrections n'ont pas été transposées correctement. Je corrige le tout sur le logiciel, et repasse commande. Je reçois la dernière version des circuits et en suis fier: le connecteur de clavier entre parfaitement en place, et tout se soude sans encombre.

Circuit imprimé final tout juste reçu

Saleté de condensateur

Cependant, malgré tous mes efforts, le rendu est encore moyen. En particulier, des "bavures" apparaissent en fin de ligne ou de caractères affichés, ce qui n'est pas trop dérangeant lorsque l'on joue mais agaçant lors de lecture de texte. Il me fallait trouver l'origine du problème.

Encore une fois, une erreur était à la source de ce problème: le marquage de polarité du condensateur indiqué sur le circuit était inversé (encore une fois à cause d'une mauvaise empreinte), et en changeant de sens le condensateur l'image finale est bien plus belle. Je ne m'en étais pas rendu compte sur le prototype intermédiaire car le condensateur que j'utilisais était prévu pour 100 Volts, et ne bronchait pas trop lorsqu'il était alimenté en inverse. Mes derniers tests ayant été réalisés avec un condensateur prévu pour 50 Volts, le comportement de celui-ci en était sévèrement altéré. Merci les composants en stock.

L'erreur de marquage est toujours présente sur le circuit imprimé, mais est bien moins grave qu'une erreur de piste ou de placement de composant. J'ai tout de même eu de la chance que le condensateur n'explose pas, les dommages pouvant être importants dans ce cas de figure.

Le montage final en place sur le Raspberry Pi

Ce qu'il me reste à faire

Le circuit d'adaptation final fonctionne à merveille, tout comme le support du clavier via un pilote écrit en Python. Je dois encore ajouter l'audio (j'ai conçu et fait fabriquer un petit circuit complémentaire d'amplification audio, histoire d'avoir du son) et concevoir via de l'impression 3D un support pour fixer le Raspberry Pi, le circuit audio annexe ainsi qu'un haut-parleur. L'ajout d'un ventilateur pourrait être un plus si l'ensemble chauffe trop, à voir à l'usage.

Prototype fonctionnel sans son (à venir)

Viendra ensuite la décoration, à l'aide de bombes de peinture et de pochoirs faits maison. Je ne suis pas un pro en ce qui concerne cette partie, mais je compte trouver de bons conseils auprès de personnes ayant l'habitude de ce genre de choses.

L'amplification audio devrait être terminée en fin de semaine, il faut juste que je commande les composants et que je prenne le temps de les souder. Je pourrais bientôt fournir les exemplaires (trois pour être précis) à leurs destinataires, et publier les fichiers de conception bien sûr.

07
juil.
'16

De retour de la Nuit du Hack 2016

Publié le 07 juillet 2016

La quatorzieme édition de la Nuit du Hack vient tout juste de s'achever, et je dois avouer que c'était juste magique. Magique non pas parce que l'évènement était de retour au pays de Mickey, mais par son organisation, ses contenus et les rencontres que l'on y fait. Petit retour à chaud de cette Nuit du Hack 2016.

Les coulisses du vendredi

Je suis arrivé sur place vendredi soir et j'ai rejoint le staff Hackerzvoice qui s'activait pour tout finir de préparer (badges, tours de cou, etc ...). En tant que conférencier, j'ai passé plus de temps sur le polissage de planches comme on dit à l'ANSSI plutôt que sur les derniers préparatifs, ainsi que sur mes démos bancales. En effet, certaines d'entre elles devaient être testées en conditions réelles, et cela m'a pris quelques heures afin de tout régler (un grand merci à Jonathan pour le coup de main). A 2h30, j'étais couché et fin prêt pour ma présentation.

Enfin, je pensais l'être.

Le Jour J

Samedi matin, après avoir avalé un petit-déjeuner, je me rends au New York Hotel afin de m'imprégner de l'atmosphère du lieu et saluer les premiers arrivés (staff et participants).

C'est l'occasion de se ballader un peu, de découvrir les surprises de l'édition 2016, mais aussi de se poser à nouveau au calme pour repenser un peu les slides. Car après une nuit de réflexion, quelques modifications m'ont semblé utiles. J'apporte ainsi les dernières corrections et boucle la version finale de la présentation.

Je commence à suivre les conférences, bien qu'ayant loupé la keynote de Louis Pouzin. Le talk de Thomas Aubin et Paul Hernault sur la sécurité de Windows 10 et les aspects protection de la vie privée était sympa, avec en prime la démonstration d'une preuve de concept nommée CortaSpoof permettant de limiter la capacité de Microsoft à profiler les utilisateurs de la dernière version de son système d'exploitation. J'ai suivi celui d'Antonio Blanchi sur la participation de l'équipe Shellphish aux différents CTFs d'assez loin, mais les quelques bribes que j'ai pu comprendre m'ont semblé plutôt intéressantes: stratégies de CTF et outils dédiés étaient au programme. Puis ce fut au tour de mon collègue Renaud Lifchitz de démontrer la faiblesse des télécommandes radio employées sur une Set-Top-Box: très instructif et les possibilités offertes sont originales !

Je n'ai pas pu assister à la présentation sur Ethereum, par contre celle sur le piratage des interphones était intéressante: Sébastien Dudek a ainsi démontré que l'on pouvait prendre le contrôle de ceux-ci en abusant du GSM à l'aide de SDR et de fausse station GSM. Les démonstrations sous forme de vidéo étaient funs et démontraient bien les risques encourus. Toutefois, les bons vieux passes PTT ou le vieillissant système Vigik peuvent être des vecteurs d'intrusion tout aussi efficace, et nécessitant moins de moyens.

La conférence suivante consacrée au crochetage improvisé était tout bonnement impressionnante: c'est exactement ce que j'attendais de celle-ci. Ouverture de cadenas avec des shims fait maison (à la MacGyver), forçage de porte au ceintre, les moyens rudimentaires y étaient et ça fait plaisir de voir une approche pragmatique de l'ouverture de portes et serrures ! C'est la dernière conférence que j'ai pu voir, car je suis allé manger assez tôt afin de terminer les préparatifs matériels de ma présentation (prévue à 21h15). Celle-ci s'est déroulée sans encombre, et j'ai eu plusieurs retours positifs ce qui fait toujours plaisir.

Les workshops

J'ai enchainé rapidement mon talk avec un workshop intitulé "Pimp My Badge", présentant le badge électronique de l'année dernière (à défaut d'en avoir un cette année) et les moyens de le bidouiller. Ca a été l'occasion de mettre un peu à jour la bibliothèque standard et d'ajouter quelques exemples.

Comme chaque année, l'atelier de crochetage de serrures a rencontré un franc succès et nombreux étaient ceux voulant s'y essayer. Didier Stevens, l'auteur de OleDump notamment, animait un workshop sur l'analyse de documents malveillants à l'aide (certainement) de ses outils. Je n'ai pas pu le suivre malheureusement, mais il semblait très intéressant.

La NDH Kids

Contrairement aux années précédentes, je n'ai pas animé d'atelier durant la NDH Kids. Mais j'en ai eu de très bons échos: des collègues et amis ayant participé ou ayant des enfants qui y ont participé en sont revenus ravis. Les ateliers étaient diversifiés: initiation à la cryptographie, programmation de Lego Mindstorms, Initiation à l'électronique et à la soudure électronique, architecture d'un ordinateur, ... Avec en plus des bean bags et une borne d'arcade !

Un grand merci

J'ai passé un excellent moment, à la fois en tant que participant mais aussi en tant que conférencier. Il est bon de retrouver une organisation comme celle de cette édition, fluide et sans accrocs, malgré la paranoia sécuritaire que l'on a pu observer lors de l'arrivée (scans aux rayons X, détecteurs de métaux, fouille de sacs). Et il y avait du Club Mate ! Bref, on remet ça l'année prochaine, et il y aura du lourd, du très très lourd (© Michel & Michel)

17
juin
'16

La Nuit du Hack 2016, c'est dans deux semaines !

Publié le 17 juin 2016

La quatorzième édition de la Nuit du Hack arrive à grands pas et se déroulera les 2 et 3 Juillet prochain à Disneyland Paris. Après un passage éclair à l'Académie Fratellini l'année dernière, l'évènement est de retour au pays de Mickey avec des conférences, des ateliers et des challenges, la routine habituelle quoi. L'occasion de découvrir ce qu'est le hacking, voire d'approfondir ses connaissances en sécurité informatique, en bidouillage matériel, en impression 3D, en lockpicking, et même de rencontrer des vraies personnes !

Les nouveautés du cru 2016

Cette année, plusieurs nouveautés ont été pensées par les organisateurs. La première d'entre elles (et à mon sens non la moindre) concerne l'aménagement des talks qui débutent à 10h00 le matin pour terminer vers 23h00, avec tout plein de pauses de prévues pour échanger, manger, boire, et tailler une bavette avec les conférenciers. C'est plutôt appréciable pour ceux qui ont connu le rush des années précédentes.

Autre nouveauté, la Nuit du Hack s'étend! Tout l'espace de conférence du New York Hotel est réservé pour l'évènement, ce qui doit représenter environ 5000 mètres carré dédié à la Nuit du Hack, avec des zones spécifiques à chaque partie: une zone pour le wargame, une zone pour les conférences, une autre pour le CTF privé, etc... Ce qui veut aussi dire plus de place pour circuler, se poser, et pas de changement de disposition de la salle principale.

Les trucs à ne pas rater

Comme chaque année, il y a quelques pépites à ne pas louper dans les conférences et les ateliers. J'en ai repéré quelques unes que je vous recommande chaudement.

Côté conférences, celle de Renaud Lifchitz intitulée Revue de sécurité du protocole ZigBee d'une box TV française semble prometteuse: j'avais déjà analysé et présenté en catimini il y a quelques années une étude d'une box TV française (et c'était pas glorieux), je pense qu'on devrait avoir la même chose avec en plus un aperçu du protocole ZigBee.

Du côté du hardware, la conférence de Sebastien Dudek intitulée House intercoms attacks, when frontdoors become backdoors (ou "Attaques des interphones, quand les portes d'entrée deviennent des portes dérobées") semble elle aussi très intéressante et mérite de s'y attarder. On peut s'attendre à y voir des attaques matérielles, un décortiquage d'interphone et des conséquences désastreuses sur la sécurité.

Enfin, la conférence de Olga Kochetova intitulée Trust No One. ATMs and their dirty little secrets présentera les petits secrets des distributeurs de billets, du réseau de communication sur lequel ils sont interconnectés jusqu'aux attaques matérielles et logicielles développées par des braqueurs d'une nouvelle génération. Ca promet d'être instructif !

En ce qui concerne les workshops (ateliers), je recommande les suivants:

Ne loupez pas le dernier de ma liste, Didier Stevens est l'auteur d'outils comme oledump très utiles lors d'investigations numériques et une très bonne source d'information quant à l'analyse de fichiers Office malveillants. Bon par contre ça sera en anglais et faudra suivre, mais à ne pas louper !

De mon côté, je vais aussi animer un petit workshop sur la conception du badge électronique de la dernière édition, si vous en avez eu un l'année dernière et que vous souhaitez explorer ses fonctionnalités, c'est l'occasion de l'amener et de découvrir comment développer sur celui-ci ! Je donnerai des exemples (code source inclus) afin de transformer le badge en gadget utile :).

Socialisons

Autre grande nouveauté cette année, j'ai limité mon implication dans l'évènement afin de pouvoir (enfin) en profiter et socialiser ! Soyons honnêtes, cela fait presque 8 ans que je n'ai pas profité à fond de l'évènement et pu discuter avec tout plein de gens (et accessoirement boire des bières). Je pense que plusieurs d'entre vous se reconnaîtront, pour avoir essayé de me payer des coups alors que j'étais en plein rush :D. Bref, cette année, je prends mon temps.

On se retrouve là-bas !



Les contenus disponibles sur ce blog sont publiés sous licence Creative Commons BY-NC-SA.
Vous pouvez réutiliser tout ou partie de ces contenus à condition de citer l'auteur et l'origine, vous ne pouvez en faire une utilisation commerciale, et enfin vous devez partager tout travail ou œuvre dérivée sous les mêmes conditions — c'est-à-dire avec la même licence d'utilisation Creative Commons.