Comment analyser un programme : du statique au dynamique jusqu’à l'instrumentation

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


Résumé

L'analyse d'un binaire, que ce soit un malware, une protection, un binaire inconnu, repose quasiment toujours sur les mêmes approches : analyse statique, dynamique et parfois instrumentation. Dans cet article, nous présentons la démarche et les outils habituels.


1. Allo docteur, c'est la Noireaude : les premières questions

Pour les plus jeunes, la Noireaude était une vache qui appelait son docteur pour tout et rien (surtout rien). Celui-ci posait des questions pour déterminer ce qu'elle avait réellement. Quand on est confronté à un programme inconnu, c'est pareil : on s'interroge. Qui est-il ? Que fait-il ? Une chose est sûre, comme ce programme est inconnu, on ne souhaite pas le lancer sans un minimum de contrôles. On parle alors d'analyse statique.

Le but de l'analyse statique est de déduire des propriétés sur le comportement d'un programme sans pour autant l'exécuter.

La première étape est de déterminer le format du fichier. La plupart des fichiers contiennent dès le début un magic qui identifie le type (MZ pour un exécutable Windows, %PDF pour un ... PDF, PK pour un ZIP...). La commande file sous Linux donne généralement le type à partir du magic :

$ file /bin/ls
/bin/ls: ELF 64-bit LSB pie...
Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

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

Introduction au dossier : Reverse engineering

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

Bienvenue dans ce dossier consacré au reverse engineering, et plus globalement, à l'analyse de fichiers. Dans le monde pas toujours très accueillant et néanmoins excitant de la cybersécurité, il est un domaine qui est regardé par beaucoup comme un sommet inaccessible : le reverse engineering. Grosso modo, il s'agit, à partir d'un produit fini, de retrouver ses ingrédients. Prenez un Big Mac, et recherchez ce qu'ils mettent dans la sauce, le pain, la salade et le steak, et comment tout cuire et superposer. Pour analyser un produit fini (programme ou hardware), un peu d'astuce, d'espièglerie, c'est la vie du reverser. Il doit avoir un appétit insatiable, une curiosité toujours en éveil, et être prêt à sauter vers de nouvelles saveurs.

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