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

Bénéficiez de statistiques de fréquentations web légères et respectueuses avec Plausible Analytics

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

Pour être visible sur le Web, un site est indispensable, cela va de soi. Mais il est impossible d’en évaluer le succès, ni celui de ses améliorations, sans établir de statistiques de fréquentation : combien de visiteurs ? Combien de pages consultées ? Quel temps passé ? Comment savoir si le nouveau design plaît réellement ? Autant de questions auxquelles Plausible se propose de répondre.

Quarkus : applications Java pour conteneurs

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

Initié par Red Hat, il y a quelques années le projet Quarkus a pris son envol et en est désormais à sa troisième version majeure. Il propose un cadre d’exécution pour une application de Java radicalement différente, où son exécution ultra optimisée en fait un parfait candidat pour le déploiement sur des conteneurs tels que ceux de Docker ou Podman. Quarkus va même encore plus loin, en permettant de transformer l’application Java en un exécutable natif ! Voici une rapide introduction, par la pratique, à cet incroyable framework, qui nous offrira l’opportunité d’illustrer également sa facilité de prise en main.

De la scytale au bit quantique : l’avenir de la cryptographie

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

Imaginez un monde où nos données seraient aussi insaisissables que le célèbre chat de Schrödinger : à la fois sécurisées et non sécurisées jusqu'à ce qu'un cryptographe quantique décide d’y jeter un œil. Cet article nous emmène dans les méandres de la cryptographie quantique, où la physique quantique n'est pas seulement une affaire de laboratoires, mais la clé d'un futur numérique très sécurisé. Entre principes quantiques mystérieux, défis techniques, et applications pratiques, nous allons découvrir comment cette technologie s'apprête à encoder nos données dans une dimension où même les meilleurs cryptographes n’y pourraient rien faire.

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 66 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous