Intrinsec était présent cette année pour la treizième édition de Hack.lu, une conférence de sécurité se déroulant au Luxembourg pendant trois jours (du 17 au 19 octobre 2017). Nous vous proposons avec cet article, une sélection des conférences qui nous ont le plus intéressés. En effet, le programme de cette année était relativement chargé avec pas moins de 35 conférences en 3 jours. La quasi-totalité des conférences a été filmée et peut être retrouvée sur une playlist YouTube dédiée : https://www.youtube.com/playlist?list=PLCxOaebc_2yNlOGhuOjInlJvr0Ktb_FYz
Snuffleupagus
Sébastien (blotus) Blot, Thibault (buixor) Koechlin, Julien (jvoisin) Voisin
Par défaut, le langage PHP est relativement permissif, et peu de méthodes existent pour en renforcer la sécurité. Une solution comme Suhosin est à proscrire, ce module n’étant pas « PHP7 ready ». Outre les méthodes classiques comme le renforcement du système d’exploitation ou la mise en place de WAF, les ingénieurs de la société NBS ont donc décidé de développer leur propre outil de virtual patching pour PHP, « Snuffleupagus ».
Celui-ci se présente sous la forme d’un module Apache qu’il est possible de configurer pour empêcher l’accès à certaines fonctions telles que system() dans certaines parties de l’application ou interdire certains caractères dans les arguments. Les présentateurs ont également montré comment le module permettait de se protéger contre des vulnérabilités découvertes dans des produits tels que Roundcube ou WordPress.
Lien YouTube : https://www.youtube.com/watch?v=RzaRiuJ6MkI
WinDBG & Powershell
Paul Rascagnères
Avec le développement de nombreuses applications basées sur le framework .NET, il n’est pas étonnant que de plus en plus de malwares reposent eux aussi sur ce framework, à travers l’utilisation du langage Powershell par exemple.
Paul Rascagnères chercheur en sécurité chez Talos, nous a présenté comment utiliser le debugger WinDBG afin d’analyser des applications reposant sur le framework .NET à travers deux cas d’usage :
- Analyse d’un script Powershell utilisant l’API Start().
- Analyse automatisée d’un packer .NET grâce à l’utilisation de l’extension PYKD.
Grâce à l’utilisation de l’extension SOS, Windbg supporte pleinement le framework .NET et est donc un outil de choix lorsqu’il est nécessaire d’analyser des codes malveillants ou des scripts reposant sur ce framework. Paul a fini la présentation par une démonstration d’un script python permettant d’automatiser l’analyse de fichier PowerShell malveillant disponible sur GitHub : dotNET_WinDBG
Lien YouTube : https://www.youtube.com/watch?v=0mVaSm9WBRA
Malicious use of Microsoft “Local Administrator Password Solution”
Maxime Clementz, Antoine Goichot
LAPS est la solution recommandée par Microsoft pour la gestion des mots de passe des administrateurs locaux dans les parcs Windows. Nous vous l’avions déjà présentée sur ce blog : Microsoft LAPS : gestion des mots de passe des administrateurs locaux
Cette solution, basée sur le logiciel AdmPwd utilise sur les postes une DLL appelée par la GPO et chargée du renouvellement. Les deux chercheurs de PwC ont présenté leur travail sur le détournement de la DLL afin d’élever ses privilèges sur le poste ou à des fins de persistance.
En effet, aucune vérification d’intégrité ou de signature n’est faite sur la DLL, un attaquant pourrait donc être en mesure d’altérer le fonctionnement nominal de la DLL en la remplaçant par une DLL malveillante. La démonstration s’est axée autour de deux fonctionnalités, le changement du mot de passe à volonté et la capacité de sauvegarder le mot de passe à chaque changement dans un fichier texte. Bien évidemment, par défaut la DLL ne peut pas être modifiée par un utilisateur standard, il conviendra donc de vérifier les droits que l’utilisateur possède sur le fichier, et que les mises à jour sont bien appliquées sur le poste de travail.
Lien YouTube : https://www.youtube.com/watch?v=opSctm4L8kE
The Bicho: An Advanced Car Backdoor Maker
Sheila Ayelen Berta, Claudio Caracciolo
Sheila Ayelen Berta a fait une démonstration des outils qu’elle a pu développer au cours de ses recherches sur les voitures « non connectées » équipées d’un bus CAN. L’objectif étant d’identifier comment le bus CAN communique avec les éléments de la voiture, dans le but d’insérer une backdoor au sein du véhicule et déclencher des actions à distance.
Dans un premier temps, la présentation s’est concentrée sur les méthodes permettant d’auditer les bus CAN des différentes voitures dans le but d’intercepter les messages transmis afin de le rejouer. Une fois les messages identifiés, l’outil Car Backdoor Maker entre en scène et permet de charger une liste d’instructions sur un équipement que l’on branche ensuite sur la voiture victime.
Une fois la backdoor mise en place, il est possible de déclencher des actions à distance grâce à l’envoi d’un simple SMS. Il est également possible de déclencher des actions en fonction de la position GPS de la voiture.
Lien YouTube : https://www.youtube.com/watch?v=9UASD7CE4lY
Keynterceptor: Press any key to continue
Niels van Dijkhuizen
Les attaques utilisant l’émulation de périphériques USB ne sont pas nouvelles, cependant elles possèdent toutes les mêmes faiblesses : il est nécessaire d’accéder à un poste non verrouillé et les outils actuels ne sont pas capables d’intercepter et d’injecter en même temps. De plus, il existe maintenant plusieurs protections permettant de se prémunir contre ces attaques, on peut par exemple citer USG, USBProxy ou encore USBGuard. Niels a ensuite présenté sa solution permettant d’intercepter et d’injecter du contenu par USB, tout en contournant les diverses contremesures existantes.
Son implant se compose d’un boitier USB qui se place en interception du clavier, et clonant les caractéristiques USB de celui-ci (identifiant, voltage, …) et d’un boitier compagnon. Afin de donner des ordres à l’intercepteur, les deux boitiers communiquent en 433 MHz, le compagnon peut ensuite être contacté à distance à l’aide d’une connexion 4G. Il devient alors possible de gérer le compagnon et l’intercepteur depuis son smartphone.
La présentation s’est conclue sur une démonstration du dispositif, très intéressant dans le cadre d’un red team.
Lien YouTube : https://www.youtube.com/watch?v=gHqIIU-Ys6M
A view into ALPC-RPC
Clement Rouault, Thomas Imbert
Dans la lignée de leur conférence courte à BeeRumP « From ALPC to UAC Bypass » et dans le but d’obtenir un contournement de l’UAC (User Access Control), ils se sont intéressés au fonctionnement de ALPC (Advanced Local ProcedureCall). Ce mécanisme permet la communication entre plusieurs processus en mode client/serveur. Ils se sont particulièrement intéressés aux fonctions de RPC-over-ALPC.
Après avoir décrit le fonctionnement d’ALPC, ils ont présenté les étapes de reverse engineering leur ayant permis de comprendre la structure des échanges ALPC. Cela leur a permis de créer une bibliothèque Python, PythonForWindows, permettant de simplifier la mise en place d’échanges ALPC.
À l’aide de ces messages ALPC et RPC ils ont été en mesure de fuzzer le protocole et de trouver de nombreuses vulnérabilités. Dont notamment un contournement de l’UAC, référencé sous l’identifiant CVE-2017-11783. La conférence a présenté l’ensemble des détails techniques permettant de recréer le code d’exploitation.
Lien YouTube : https://www.youtube.com/watch?v=D-F5RxZ_yXc
The untold stories of Hackers in detention
Au cours de cette présentation, deux Hackers ayant été arrêtés pour des crimes informatiques sont venus témoigner et faire part de leur histoire depuis leur arrestation, jusqu’à leur détention. À travers ces témoignages ils ont tenté de transmettre au public les « bonnes pratiques » à adopter en cas d’arrestation, les comportements à avoir une fois en prison, ainsi que la manière dont ils ont géré « l’après ». Nous n’entrerons pas plus dans les détails, aucun support de présentation ou vidéo n’étant disponible, à la demande des présentateurs.
Infosec and failures
Ange Albertini
Au cours de cette keynote, Ange Albertini a décidé de nous donner sa vision concernant les « échecs » dans le monde de la sécurité informatique. Il ne s’agissait pas ici de pointer du doigt les différents acteurs du milieu, mais plutôt d’amener chacun à réfléchir sur sa capacité à accepter les échecs et persévérer. Il est complexe de résumer en quelques phrases tous les messages qui ont pu être délivrés au cours de cette présentation, mais le discours a toujours été bienveillant. Nous vous recommandons bien entendu de regarder la vidéo complète, qui fera écho chez les débutants comme les confirmés.
Lien YouTube : https://www.youtube.com/watch?v=erZ2JlfTtcE
SIGMA : Generic signatures for log events
Thomas Patzke
Lorsqu’il s’agit d’analyser des logs et détecter des attaques, aucun format standardisé n’existe actuellement, comme c’est le cas pour Yara ou Snort au niveau réseau. C’est à ce problème que SIGMA tente de répondre.
À travers la création de règles au format YAML, SIGMA permet d’analyser les logs et détecter des attaques qui pourraient survenir sur un système ou une application web. À titre d’exemple, Thomas Patzke a présenté des exemples concrets d’utilisation de SIGMA, tels que :
- La détection de Mimikatz lors de l’accès au processus LSASS.exe
- La détection de webshell
- La détection d’usurpation d’identité sur Windows (tentatives de connexion sur de multiples comptes depuis une source unique).
La grande force de cet outil est qu’il embarque un convertisseur permettant de générer des requêtes prêtes à l’emploi pour des outils comme Splunk ou ElasticSearch. Cet outil est open source et semble prometteur au vu des fonctionnalités qu’il propose.
Lien Youtube : https://www.youtube.com/watch?v=OheVuE9Ifhs
In Soviet Russia, Vulnerability Finds You
Inbar Raz
Cette conférence avait comme axe principal la découverte de vulnérabilité « par hasard » lors de la navigation sur Internet. Au travers d’exemples, le conférencier a présenté différentes vulnérabilités, leurs conséquences et la communication parfois difficile avec les parties concernées :
- Compagnie de taxi : Sans authentification et juste avec un numéro de téléphone, il était possible de récupérer les coordonnées des clients.
- Aéroport international en Europe de l’Est : La découverte du switch central de l’aéroport depuis un poste en libre-service utilisant le mot de passe administrateur par défaut.
- Bot Tinder : les recherches sur une nébuleuse de faux comptes Tinder incitant l’utilisateur à utiliser des sites de rencontre en ligne, et ses recherches jusqu’à retrouver la personne derrière ces comptes.
- Une chaine de café en Israël : Comment en partant d’un simple accès en ligne à son compte fidélité et à l’aide de sa carte magnétique, il a été en mesure de créer de fausses cartes de paiement valide et de connaitre le solde de l’ensemble des clients.
Pour conclure, Inbar recommande à tout le monde de continuer d’être curieux, et de remonter les vulnérabilités identifiées.
Front door Nightmares. When smart is not secure
ObiWan666
Obiwann666 s’est penché sur la sécurité des serrures dites « intelligentes » en se concentrant principalement sur les mécanismes électroniques qu’embarquent ces serrures. Après une présentation sur le fonctionnement général des différents prototypes qui ont été analysés, cinq vecteurs d’attaques ont été identifiés :
- Electronic bypass: En se connectant directement sur le moteur de la serrure, il est possible de forcer l’ouverture de celle-ci.
- Signal replay: En analysant la séquence d’ouverture et de fermeture transmise au moteur, il est possible de les rejouer afin de les déclencher à la volée.
- Brain implant attack: S’il est possible d’accéder à la partie électronique de la serrure, l’attaquant est en mesure de remplacer le « cerveau » de celle-ci de manière temporaire avec un « cerveau custom » afin d’ouvrir la serrure.
- Traditionnal lockpicking: Les serrures possèdent généralement un emplacement permettant d’ouvrir celle-ci avec une clé classique en cas d’urgence, qu’il est possible d’ouvrir à l’aide d’outils de lockpicking.
- Divers : Diverses méthodes ont également permis de contourner les mécanismes de ces serrures comme l’utilisation d’une perceuse ou d’une bump key…
Malgré les différentes vulnérabilités découvertes, le présentateur n’exclut pas l’utilisation de ces serrures intelligentes, dans le cas bien sûr où celles-ci sont utilisées pour des besoins spécifiques et correctement implémentées.
Vulnerability disclosure, governments and you
Jeroen van der Ham
Le Responsible Disclosure, ou le fait de remonter des vulnérabilités découvertes en dehors de tout cadre légal est toujours compliqué. L’intervenant, travaillant pour l’équivalent de l’ANSSI en Hollande (NCSC-NL), a présenté l’orientation prise par son gouvernement afin de faciliter la remontée de vulnérabilités impactant l’ensemble des sociétés privées et publiques du pays.
Il a ensuite, au travers d’exemples, illustré divers hackers ayant remonté des vulnérabilités, et les conséquences que cela a pu avoir, aussi bien au niveau de la justice que des récompenses offertes par les sociétés. En conclusion, les entreprises comprennent de plus en plus que les remontées de vulnérabilités faites de manière coordonnée permettent de mettre en place les correctifs rapidement sans impacter leur image.
Line YouTube : https://www.youtube.com/watch?v=A8I-PnqMMKs