Revue de livre : « Practical Reverse Engineering »

Magazine
Marque
MISC
HS n°
Numéro
24
Mois de parution
septembre 2021
Spécialité(s)


Résumé

« Practical Reverse Engineering » est né de la passion et de la volonté de Bruce Dang (@brucedang), alors jedi in training au sein du Microsoft Security Response Center (MSRC). Il en est l’architecte et la force motrice. À l’invitation de Fred (pappy), plus qu’une critique, voici une brève rétrospective, 10 ans après, de l'aventure qu'a représenté ce livre pour nous.


Body

livre-s 0

Avec les graines du projet en tête, Bruce a commencé à rassembler autour de lui un premier groupe de travail, début 2011 environ. Après quelques rebondissements, un noyau d’auteurs s’est alors dégagé : Bruce, Elias Bachaalany, Sébastien Josse et moi-même. En souvenir des très nombreuses nuits d’échanges et de discussions avec Rolf Rolles sur l’obfuscation et l’analyse de code, j’aimerais le citer en auteur de l’ombre également. Une fois le deal avec l’éditeur Wiley en poche, nous voici partis pour une bonne année de rédaction.

Une des motivations au cœur du projet était en quelque sorte de restituer nos connaissances à la communauté. Tout comme nous avions nous-mêmes appris de nos pairs, nos prédécesseurs, via une multitude de contenus, de tutoriels, etc. L’ambition du livre était donc de fournir les bases, un socle de connaissances propres au domaine du reverse-engineering. Plus qu’une liste de recettes à appliquer, nous avons cherché à mettre en avant la méthodologie, les chemins de pensées et les concepts clés, tout en gardant un côté « appliqué ». Ainsi, le livre associé aux exercices et cas pratiques proposés est vraiment conçu comme un matériel de formation. Le contenu est bien évidemment teinté de nos propres expériences et parcours. On y retrouve donc un fort penchant vers les environnements Windows.

Les chapitres 1 & 2 sont destinés à donner au lecteur les bases requises en architecture matérielle. Dans le cas général, c’est le matériau brut sur lequel travaille généralement le reverse-engineer : le code assembleur, à savoir les instructions exécutées par le processeur. De façon intéressante, les architectures Intel x86/x64 ainsi que ARM sont abordées (un support ARM sera releasé par Microsoft fin 2012 pour les tablettes Surface notamment). Cette dernière architecture a depuis continuellement gagné en exposition avec l'explosion du mobile.

Le chapitre 3 introduit le cœur de la méthodologie. Pour cela, nous utilisons le noyau Windows comme terrain de jeu, plus particulièrement l’analyse de rootkits et codes malveillants. Ce choix fait écho, au début des années 2010, à la déferlante de découvertes et analyses de ces magnifiques frameworks offensifs industrialisés dont certains sont rentrés à la postérité : Stuxnet, Duqu, Flame, Regin, etc. Comment se projeter sur l’analyse de tels codes est la question à laquelle ce chapitre tente de répondre : compréhension de l'environnement, des interfaces avec le système d’exploitation, de la structure attendue du code (ex. un driver), etc.

Le chapitre suivant (4) revient sur un aspect appliqué qui est la maîtrise de l’outil d’analyse dynamique, le debugger et notamment Windbg. Pour conclure, le chapitre 5 ouvre une perspective sur l’analyse de code durci ou obfusqué, technique couramment utilisée par certains codes malveillants afin de rendre leur analyse plus complexe.

Nous avons l’espoir que cet ouvrage aura servi à un certain nombre à se lancer, à découvrir, à expérimenter par eux-mêmes. Sa lecture et l’achèvement de tous les exercices proposés constituent un investissement important, mais (une nouvelle fois) que nous espérons gratifiant et bénéfique. Les retours reçus au cours de ces années ont en tout cas été pour nous la meilleure récompense. Personnellement, je remercie encore Bruce de nous avoir fait confiance et embarqués dans cette aventure.

  • Auteurs : Bruce Dang, Alexandre Gazet, Elias Bachaalany (contribution de Sébastien Josse)
  • Éditeur : Wiley
  • Parution : 7 février 2014
  • Nombre de pages : 480
  • Prix : 42,80 euros


Article rédigé par

Par le(s) même(s) auteur(s)

Metasm : boîte à outils pour le reverse engineering

Magazine
Marque
MISC
HS n°
Numéro
3
Mois de parution
avril 2011
Spécialité(s)
Résumé

Metasm est un logiciel open source destiné à la manipulation de fichiers exécutables binaires. Très flexible, il couvre un large panel d'actions, permettant aussi bien la compilation de fichiers source que le désassemblage de binaires, en passant par le débogage de processus et l'analyse de shellcode. À l'aide de plusieurs cas d'utilisation simples, nous dressons ici un panorama des possibilités offertes ; cette introduction sera l'occasion de revoir et comprendre les fondements du framework et pourquoi pas, vous donner envie d'aller plus loin.

Méthodologie d'évaluation des antivirus

Magazine
Marque
MISC
Numéro
47
Mois de parution
janvier 2010
Spécialité(s)
Résumé

Cet article décrit une méthodologie d'évaluation des logiciels antivirus. Elle reprend les grandes lignes de la méthodologie d'évaluation CSPN (Certification de Sécurité Premier Niveau), et tente de prendre en compte les spécificités de ces logiciels. Notre méthodologie se veut un compromis entre les aspects formels et opérationnels. Certains points sont ouverts : il s'agit plus d'un guide que d'une méthode rigide. Une certaine liberté est donc laissée aux évaluateurs.

Les derniers articles Premiums

Les derniers articles Premium

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Brève introduction pratique à ZFS

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Il est grand temps de passer à un système de fichiers plus robuste et performant : ZFS. Avec ses fonctionnalités avancées, il assure une intégrité des données inégalée et simplifie la gestion des volumes de stockage. Il permet aussi de faire des snapshots, des clones, et de la déduplication, il est donc la solution idéale pour les environnements de stockage critiques. Découvrons ensemble pourquoi ZFS est LE choix incontournable pour l'avenir du stockage de données.

Générez votre serveur JEE sur-mesure avec Wildfly Glow

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Et, si, en une ligne de commandes, on pouvait reconstruire son serveur JEE pour qu’il soit configuré, sur mesure, pour les besoins des applications qu’il embarque ? Et si on pouvait aller encore plus loin, en distribuant l’ensemble, assemblé sous la forme d’un jar exécutable ? Et si on pouvait même déployer le tout, automatiquement, sur OpenShift ? Grâce à Wildfly Glow [1], c’est possible ! Tout du moins, pour le serveur JEE open source Wildfly [2]. Démonstration dans cet article.

Les listes de lecture

11 article(s) - ajoutée le 01/07/2020
Clé de voûte d'une infrastructure Windows, Active Directory est l'une des cibles les plus appréciées des attaquants. Les articles regroupés dans cette liste vous permettront de découvrir l'état de la menace, les attaques et, bien sûr, les contre-mesures.
8 article(s) - ajoutée le 13/10/2020
Découvrez les méthodologies d'analyse de la sécurité des terminaux mobiles au travers d'exemples concrets sur Android et iOS.
10 article(s) - ajoutée le 13/10/2020
Vous retrouverez ici un ensemble d'articles sur les usages contemporains de la cryptographie (whitebox, courbes elliptiques, embarqué, post-quantique), qu'il s'agisse de rechercher des vulnérabilités ou simplement comprendre les fondamentaux du domaine.
Voir les 67 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous