Les articles de MISC Hors-Série N°7

Image promotionnelle
Introduction au reverse engineering
Article mis en avant
Cet article aborde l’obfuscation de langage interprété (Java/JavaScript, Perl, PHP). Dans un premier temps, il détaille ce que nous entendons par obfuscation, les techniques utilisées et les buts recherchés, que ce soit du point de vue de l’attaquant ou de celui du défenseur. Ensuite, cet article détaille des cas d’usage avant d’apporter des pistes sur la détection de code obfusqué et sa désobfuscation.
Lors de la capture ou de la découverte d'un malware dans un environnement comptant des milliers de postes, les questions du « management » ne se feront pas attendre. Quels sont les risques réels de ce logiciel malicieux ? Était-ce une attaque ciblée ? Est-ce que des données confidentielles ont été volées ? En un mot, quels sont les risques effectifs provenant de cette attaque ?
Lors de l'analyse de programmes, qu'ils soient malveillants ou non, il est fréquent de se retrouver confronté à un packer. Cette protection, ajoutée après la compilation du programme, ralentit l'analyse du programme et peut rendre certains outils d'analyse inopérants. Elle doit donc être contournée, ou mieux : supprimée. Cet article présente les différentes techniques et astuces que nous utilisons pour parvenir à nos fins le plus rapidement possible.
Petite devinette : à part leurs implications dans la sécurité des systèmes d’information, quel point commun existe-t-il entre la recherche de vulnérabilités, les systèmes de détection d’intrusions, la supervision de réseau, le DPI, les pots de miel et la détection de fuites de données ?Trivial me diriez-vous :) Toutes reposent sur la connaissance préalable des protocoles de communication. Mais alors, ces mécanismes de défense sont-ils efficaces en présence de protocoles propriétaires, ou du moins, non documentés ? Vous savez, ce flux USB inconnu, ces paquets UDP bizarres ou ces appels IPC réguliers incompréhensibles…Dans cet article, nous présentons une méthodologie pour disséquer sur le vif, un protocole de communication. Promis, pas de copie d’écrans d’IDA ni d’OllyDbg et à l’inverse, pas de formule mathématique. Pour être précis, ici on dissèque des protocoles inconnus en Python avec « son Netzob et son couteau ».
Cet article propose un aperçu du travail d'une équipe de réponse sur incidents. L’idée est ici de donner à voir la façon dont travaille cette équipe, de la découverte ou réception d’un exploit « 0-day », jusqu’à la mise au point d’une détection.
Le monde mobile est dominé par le système Android. Être capable d'analyser une application Android afin de la comprendre, évaluer sa robustesse ou détecter la présence d'un malware est une compétence de plus en plus recherchée. Cet article synthétise les différentes techniques et outils permettant l'étude d'une application Android.
La rétro-ingénierie sur terminal mobile est un sport à la mode, car il est devenu une alternative sérieuse à l'ordinateur. Les données personnelles, cibles des logiciels malveillants, sont d'ailleurs souvent encore plus sensibles sur ce support. C'est la raison qui pousse de nombreux chercheurs en sécurité à se pencher sur la question. Néanmoins, la documentation pour démarrer sur iOS est très éparse. L'objectif de cet article est donc de donner à nos compatriotes intéressés les armes nécessaires pour commencer efficacement les recherches.
Une plongée dans les profondeurs insoupçonnées de l'API Facebook... « Et pourquoi ne pas se désinscrire de Facebook ? ». L'idée est à la mode. Cependant, les rares à s'y essayer comprennent vite que ce n'est pas qu'une question de volonté. De nombreux écueils rendent l'opération complexe...
Les grandes conférences mondiales de « hacking » du moment comme Black-Hat, CHES ou encore le CCC (Chaos Computer Congress) en Europe [1] [2], présentent régulièrement des résultats et des travaux faisant appel à des méthodes de rétroconception de puces électroniques. Ces techniques sont utilisées pour mettre en évidence des failles de sécurité de dispositifs numériques présentant un caractère sensible en matière de confidentialité, intégrité et disponibilité de service. En effet, elles permettent de porter des attaques intrusives au plus bas niveau d’intégration de l’électronique, c’est-à-dire le « silicium », dans le but d’escamoter des protections physiques ou encore d’extraire des éléments secrets (codes, algorithmes, clés…).