La Nuit du Hack est l'évènement majeur de la communauté Hackers française, généralement organisée fin juin, qui réunit passionnés, professionnels et novices autour d'un thème commun: le hacking. Ce n'était rien de moins que la onzième édition qui se déroulait ce week-end à Disneyland Paris, autour de talks, de workshops, de challenges et de bière (ainsi que des soft drinks, bien sûr). Zou, visite guidée des coulisses de l'organisation de la NDH version 2013 !
Un an de préparation
La méthode est désormais rodée: à peine la Nuit du Hack terminée, l'organisation de la suivante démarre. Cela représente un an de travail acharné pour seulement 24 heures, ce qui n'est pas rien. La recherche de sponsors, la préparation des CFPs, les débuts de conception de design graphique ainsi que les grands axes d'orientation de l’événement se décident à ce moment. C'est aussi l'occasion de faire l'état des lieux des éléments à améliorer, de prendre en compte les remarques constructives des visiteurs envoyées par email, twittées ou parfois même bloguées. On attache une importance toute particulière aux soucis rencontrés et aux solutions possibles. Par exemple, décision fut prise l'année dernière de cabler le wargame plutôt que de se baser sur du WiFi (qui se fait sniffer/polluer chaque année) et de mettre le CTF dans une salle à part. Il n'y a jamais eu de Nuit du Hack sans cafouillages ou problèmes, même cette édition a eu son lot d'ennuis qu'il a fallu gérer.
Ensuite, il y a toute la logistique à superviser. Ce qui va de l'agencement des salles avec plans et tout le toutim aux moyens techniques et à la planification. Il faut aussi gérer en parallèle les qualifications, la conception de l'infrastructure du CTF et du wargame, la réalisation des épreuves de ces deux concours et celle du réseau global à déployer lors de l'évènement. Les partenaires tels que Zen Connect ou Orange sont d'une grande aide en ce qui concerne cette partie, tout comme Outscale (via majinboo) ou OVH (un big up à toute l'équipe !). Sans oublier la communication (Hicham & Lucie).
Un CTF remanié
Cette année, nous sommes partis sur un CTF différent des années précédentes. Il s'agissait toujours d'un CTF attaque/défense, mais cette fois-ci basé sur un scénario et un concept nouveau: la suppression pure et simple des flags formatés. Chaque équipe avait à sa disposition un pare-feu frontal (couche 2) et un serveur hébergeant des services, et se voyait mise dans la peau d'une société réalisant des solutions de DRM (nommée GZT) et devant assurer la pérénité des données de ses clients. Bien sûr, l'objectif est simple: protéger ses données tout en récupérant celles des autres équipes. La nouveauté résidait dans le fait que les données constituaient ce que l'on nomme couramment des "flags": des éléments d'information ayant de la valeur. Les équipes devaient donc voler ces données, et les diffuser sur un portail que nous leur avions mis à disposition, une sorte de Pastebin. A chaque fois qu'une équipe divulguait des informations ayant de la valeur, des points étaient attribués à celle-ci et autant étaient retiranché aux équipes attaquées.
L'infrastructure a été elle aussi repensée et adaptée: la solution de virtualisation a été revue, l'infrastructure simplifiée et l'administration facilitée. Tout cela pour éviter de reproduire les erreurs de l'année précédente. Le matériel prêté par OVH a d'ailleurs été d'un grand secours: ils nous ont prêté de sacrées machines avec des capacités de fou furieux ! Encore une fois, merci à vous ;).
L'installation chez Mickey
On a déménagé tout le matériel le jeudi précédant la Nuit du Hack, durant Hack in Paris, et tout installé dans une salle technique. Depuis quelques années, cela se déroule sans trop de problème car nous nous sommes équipés. Tout est sur roulettes, empilable, et étiqueté. Et avec un camion à hayon, le transport se déroule sans encombre.
Une fois à Disneyland, le premier problème. Un problème d'alimentation. Une personne est venue nous installer suffisamment de puissance pour alimenter nos baies, afin que l'on termine les tests de déploiement ainsi que les configurations de certaines machines. Un peu trop de puissance en fait. Résultat: un bon vieil arc électrique et une imitation de Claude François évitée de justesse. Moins trois alimentations qui n'ont pas supporté la décharge. Qu'à cela ne tienne, le spare est là pour cela: le tout est changé rapidement.
<emb150|center>
<emb151|center>
L'installation de la baie dans la salle dédiée au CTF a été faite le lendemain, et nous avons passé une bonne partie de la journée à câbler, gaffer, tester, déployer et déboguer les systèmes. Et il fallait bien cela. Cette phase s'est terminée le samedi à midi environ.
Le grand bain
La Nuit du Hack a ouvert ses portes relativement tôt (je n'ai pas su réellement à quelle heure, j'ai profité comme quelques autres de la nuit pour essayer de bien dormir), et à 9 heures la salle commençait déjà à être parsemée de geeks et hackers de tout poil. Et on attendait toujours Jérémie Zimmermann, le conférencier en charge de la keynote. Clad a pris la parole, salué tout le monde, tandis que nous tentions désespérément de le contacter. Quelques temps après, des nouvelles de Jérémie et la keynote a ainsi pu se faire sans souci (mais avec du retard). La journée commençait bien. Ceci dit, mieux que l'année dernière car l'an dernier à 9 heures nous n'avions plus d'alimentation dans toute la salle. Quelques soucis de WiFi ont aussi été géré, mais dans l'ensemble tout allait comme sur des roulettes à partir de 10 heures.
<emb152|center>
Les participants ont ainsi pu profiter des talks, des speakers, mais aussi des bars, des tables et du réseau déployé. Car oui, cette année il y avait du WiFi qui fonctionnait ! Toutes nos excuses à Dave Kennedy pour l'interruption inopinée de talk (pour cause de mauvais timing), mais cela a été rattrapé par la suite. Le stress du moment certainement. A 20 heures, changement de configuration de salle pour héberger les workshops et le wargame: les participants (1300 personnes environ) ont du sortir de la salle et se sont agglutinés dans les couloirs, où il est devenu difficile de circuler. Un point à résoudre pour la prochaine édition.
Au même moment, les équipes CTF entraient dans la salle dédiée afin de s'installer et de découvrir ce que nous leur avions préparé. Nous avons fait un rapide briefing avant de démarrer le jeu, expliquant aux équipes les règles et leur remettant par la suite un livret contenant le règlement, le détail de l'architecture et leurs accès. Nous leur avons donné 30 minutes pour accéder à leurs machines et les configurer (modifier les mots de passe, changer les règles de filtrage, etc ...), puis les avons connectés entre eux afin de déclarer officiellement la guerre ouverte. Petite frayeur pour l'équipe, les systèmes de monitoring ont remonté pas mal de rouge quelque temps après, les équipes découvrant les services et testant les premières attaques (des scans surtout). Le tout s'est stabilisé, et ceux ayant vu l'utilité du pare-feu frontal s'en sont plutôt bien tirés. Une équipe a choisi de laisser ses services inaccessibles ([technopandas]), par pur choix stratégique, mais a fait marche arrière quelques heures plus tard. Le dimensionnement était plutôt bon, vu la stabilité de l'infrastructure durant le CTF. Au final, une seule épreuve n'a pas été exploitée et le CTF remporté (à nouveau) par les russes de HackerDom. SoSix les talonnait de très peu de points, et la lutte finale s'est vraiment faite entre ces deux équipes. Une belle bataille en somme.
Remise des prix
A 6 heures du matin le dimanche, le CTF a été arrêté et les scores figés. Les russes de HackerDom ont validé à quelques minutes de la fin une série de données volées qui leur ont donné l'avantage, laissant à l'équipe SoSix très peu de temps pour compenser. A 7h00, les prix ont été remis aux équipes: * 4000€ TTC pour la première place (HackerDom) * 1 serveur dédié 16G OVH pour 1 an (SoSix) * 1 serveur VPS OVH pour 1 an (Sutegoma2)
Encore un grand bravo aux équipes, qui ont lutté durement pendant les 9 heures qu'ont duré ce CTF. On espère vous revoir l'année prochaine les gars !
Mot de la fin
Cette Nuit du Hack fut éprouvante. A l'heure où je rédige ce billet, j'ai encore les yeux bien rouges et du sommeil à rattraper. Mais elle fut riche en rencontres (oui, il n'y a que là que j'ai croisé un Ukrainien comprenant le français et trollant sur la sécurité), en rebondissements (côté CTF), et en pur plaisir. Et pour une fois, le wargame et le CTF ont fonctionné sans problème majeur. Et ça, ça fait très plaisir. Et oui, ce petit compte-rendu est très axé sur le CTF, mais eh, je n'ai pas pu suivre les talks ni les workshops.
J'attends avec impatience celle de l'année prochaine, en espérant que l'on arrive à faire aussi bien que l'édition 2013, avec plus de moyens, encore plus de fun et de hacks. J'espère sincèrement que vous avez apprécié cette NDH comme nous avons apprécié l'organiser, et sachez que l'on se démène pour arriver à tenir le niveau.
Pour terminer, je tiens à remercier tout particulièrement les personnes qui nous ont aidé à préparer ce CTF: Corbier, kaiyou, y0no, Benjamin, Bastien, Saiyan, UnclePecos, et Julien. Et désolé si j'en ai fait c*ier certains d'entre vous, le stress toussa ... Et puis encore un grand merci à toute la team OVH, et en particulier Henri: vous roxxez les mamans ours :). Un autre grand merci aux collègues d'HZV, aux anciens des débuts de la NDH (rappelez-vous, le cybercafé, la grange, cela a bien changé), et à tous les ghosts (80 personnes environ) sans qui cela n'aurait pas été possible.
Les 22 et 23 juin prochain se déroulent la «Nuit du Hack» millésime 2013, avec son lot de présentations, de workshops et bien sûr le CTF et le wargame public. 24 heures de hack, de geekeries et de rencontres avec des passionnés de bidouille et de hacks en tout genre.
Des nouveautés !
La Nuit du Hack évolue au fil des ans, et on essaie de prendre en compte les différentes remarques/critiques/coups de gueule afin d'améliorer cet évènement. Et suite aux retours de l'année dernière, nous avons mis en place plusieurs nouveautés marquantes: * une salle à part pour le challenge Capture The Flag, * un wargame qui est désormais câblé plutôt que via le WiFi, * une augmentation du prix de l'entrée de 6 euros, * une entrée spéciale incluant l'adhésion à l'association HZV. Bon, cela fait pas mal de choses d'un coup alors je vais détailler ces points un à un.
Cette année, les participants du challenge Capture The Flag auront accès à une salle dédiée regroupant les dix équipes retenues et le staff. Ceci afin d'atténuer les nuisances sonores et de faciliter la concentration des équipes. La salle sera toutefois accessible au public, mais organisée de telle manière à ce que cela ne gêne pas les participants. Comme l'an dernier, les équipes participantes auront accès avant le public à cet espace, de manière à s'installer et prendre connaissance de la documentation et du règlement.
La seconde nouveauté concerne le wargame public, qui sera câblé et accessible uniquement via ce moyen. Nous allons mettre à disposition plusieurs commutateurs sur lesquels les participants pourront se connecter, des câbles RJ45 sont donc à prévoir (ainsi que des switches, si vous en avez). Nous fournirons aussi l'alimentation nécessaire, dans la limite du possible (via des prises et rallonges). Les places assises réservées au wargame sont limitées, mais la moquette est confortable. Les résultats des wargame et du CTF (classement, graphes) seront diffusés en temps réel sur des écrans de projection.
En ce qui concerne les entrées, il y a eu aussi du changement dont un notable: l'augmentation de 6 euros de l'entrée. Je sais ce que vous allez dire: le prix augmente tous les ans. Et ce n'est pas la faute de la crise, mais plutôt de plusieurs facteurs que nous avons négligé les années précédentes (comme l'accès à Internet via WiFi, la place occupée, les améliorations apportées). Un souci de qualité, quoi. De plus, nous avons mis une entrée plus chère à 70€, incluant l'entrée à la Nuit du Hack et l'adhésion à l'association HZV. Si vous souhaitez nous aider à organiser d'autres Nuit du Hack encore meilleures et participer à l'association HZV, n'hésitez pas ;).
L'association HZV
Car oui, HZV est désormais une association de type loi de 1901, dont la déclaration au Journal Officiel est parue le 13 avril 2013 avec la référence W931011379. L'idée a mûrit pendant quelques années, et s'est concrétisée courant 2012.
L'association a pour vocation d'organiser dans un avenir proche la Nuit du Hack, et de la financer en partie de manière indépendante. Elle a aussi pour objectifs de fournir des services aux membres, de leur donner accès à des ressources (matérielles notamment) et de favoriser l'échange entre bidouilleurs de tout poil (de barbe). C'est elle qui encadrera désormais les meetings mensuels, qui ne seront pas réservés aux seuls membres mais à tout le monde, comme depuis leur création.
Le site d'HZV sera bientôt modifié de manière à refléter ce statut, et nous allons mettre à disposition aussi vite que possible la procédure d'adhésion à l'association, l'envoi des cartes de membre et un descriptif plus complet des services proposés. Pour en savoir plus, contactez info@hackerzvoice.net.
Un stand HZV sera présent à la Nuit du Hack, où vous pourrez avoir de plus amples informations sur l'association, ses moyens et ses projets. Et si vous souhaitez adhérer ou simplement vous renseigner, n'hésitez pas !
Les programme officiel
Le site de la Nuit du Hack contient toutes les informations sur les présentations ainsi que sur les challenges. Cependant, pour vous mettre un peu l'eau à la bouche, voici la liste des présentations: * [EN] Abusing Browser User Interfaces for fun & profit, par Rosario Valotta * [EN] Practical exploitation of rounding vulnerabilities in internet banking applications, par Adrian Furtuna * [FR] Modern web frameworks, modern vulnerabilities, par Florent Batard et Nicolas Oberli * [EN] Love letters to Frank Abagnale (Oh how I PWN thee let me count the ways), par Jayson E. Street * [FR] Securing cities with CCTVs? Not so sure – A urban guerilla perspective, par Eric Filliol et Thibaut Scherrer * [EN] Cracking and analyzing Apple iCloud protocols: iCloud backups, Find My iPhone, document storage, par Vladimir Katalov * [EN] From kernel space to user heaven, par Jaime Sanchez * [EN] Thinking Outside of the Box, par Dave Kennedy * [FR] Social Engineering and Journalism: Methodology of human behavior, par Hicham Tolimat et Julie Gommes * [FR] Behind the Scenes of Web Attacks, par Davide Canali * [FR] Attacking e-voting: a concrete case, par Sebastien Andrivet * [FR] Physical Security flaws applied to Industrial Espionage, par Alexandre T. et Olivier C.
Cette année encore les présentations sont en anglais et en français, et les slides et vidéos seront mis en ligne à la suite de l'évènement. Les présentations sont suivies de workshops divers, je vous invite à consulter le programme officiel des workshops sur le site de la Nuit du Hack. Cependant, certains sont bien alléchants:
Comment s'inscrire ?
Rien de bien compliqué pour s'inscrire: -# Se rendre sur le site de la Nuit du Hack -# Cliquer sur l'onglet "S'inscrire" -# Choisir le type d'entrée et régler (un compte est requis pour régler et avoir accès aux billets) -# Imprimer le billet d'entrée et son QR code associé
Et ensuite, rendez vous au New York Hotel au pays de Mickey (à Disneyland Paris) le 22 à 9h00 tapantes ! Plus d'information sur le site officiel de la Nuit du Hack.
(Et s'il vous vient l'envie de discuter ou de boire une bière en trollant, faudra pas hésiter)
Les tweets «promoted» de Twitter sont des tweets publicitaires (ou presque) que Twitter affiche dans votre Timeline en fonction de vos goûts, passions ou autres détails de votre vie que vous voulez bien lui donner. Accessoirement, cela rend votre Timeline Twitter un brin illisible, et dans certains cas cela peut devenir irritant. N'étant pas un fan de ce type de pratique, j'ai trouvé une solution toute simple pour résoudre ce problème.
GreaseMonkey FTW
J'avais déjà lors de quelques pentests eu recours à GreaseMonkey pour manipuler des codes Javascript un brin hardcore, et j'en avais été pleinement satisfait. Pour faire court, GreaseMonkey est une extension disponible sur pas mal de navigateurs permettant de manipuler en «live» le code de la page, en toute transparence. Autrement dit, vous pouvez appliquer des transformations autant sur le contenu HTML que le code Javascript voire même les styles employés par une page. Cette extension nécessite sur Firefox une installation, mais à ma grande surprise elle est intégrée par défaut dans Chromium, l'alternative libre du navigateur Chrome de Google ! Et ça, eh bien ça n'a pas de prix.
GreaseMonkey (GM) se base sur des scripts Javascripts contenant des métadonnées (description du script, auteur, etc ...) mais aussi du code actif. Le script est chargé selon un modèle d'URL (contenu dans les métadonnées), et peut agir avant ou après le lancement du Javascript sur la page. Autrement dit, on peut faire tout et n'importe quoi avec GM. Enfin, surtout n'importe quoi. Il existe des scripts pour relooker Twitter, pour ajouter des fonctionnalités, pour modifier des comportements de site, etc ... Vous pourrez d'ailleurs en trouver plein sur le site userscripts.org.
And now, ladies and gentlemen, "le" script !
Vous vous attendiez à un script de fou ? A un code intégrant des gros hacks et tout et tout ? Vous allez être déçus. Tout simplement parce que les éléments "promoted" de Twitter possèdent un style qui leur est propre, comme promoted-tweet, promoted-account ou promoted-trend.
La solution: forcer leur disparition à grand coup de CSS et de display: none. Pas moins que cela. Pour réaliser cette modification de manière automatique, j'ai codé en quelques minutes le script suivant:
// ==UserScript==
// @author Damien "virtualabs" Cauquil
// @name Promote Me Not
// @namespace http://virtualabs.fr/pmn/
// @icon http://virtualabs.fr/pmn/pmn.png
// @icon64 http://virtualabs.fr/pmn/pmn.png
// @updateURL http://virtualabs.fr/pmn/pmn.user.js
// @version 1.1
// @description Remove Twitter's promoted tweets from your TL
// @match http://*.twitter.com/*
// @match https://*.twitter.com/*
// @grant GM_addStyle
// @licence (CC) Attribution Share Alike (CC-BY-SA)
// @resource icon /pmn/pmn.png
// ==/UserScript==
/* Install some neat CSS rules */
GM_addStyle(".promoted-tweet * display: none * .promoted-trend * display: none * .promoted-account * display: none *");
Le script est téléchargeable à cette addresse et peut être installé automatiquement via un glisser-déposer dans Chromium (faites un glisser/déposer du fichier dans la liste des extensions, menu "Paramètres" onglet "Extensions"), ou via l'extension GreaseMonkey sous Firefox et autres navigateurs compatibles. En espérant que cela vous rende la vie plus belle et plus joviale.