Radare2 (r2) est un framework d'ingénierie inverse open-source qui offre une large gamme d'outils pour l'analyse de binaires, le débogage, le désassemblage, et bien plus encore. Il est particulièrement utile pour les professionnels de la sécurité, les développeurs, et les chercheurs en sécurité qui souhaitent analyser des fichiers binaires, des logiciels malveillants, ou des applications pour identifier des vulnérabilités et comprendre leur fonctionnement interne.

Installation

Pour installer Radare2, vous pouvez utiliser les gestionnaires de paquets de votre distribution Linux. Par exemple, sur une distribution basée sur Debian comme Ubuntu, vous pouvez utiliser apt :

sudo apt update
sudo apt install radare2

Vous pouvez également installer Radare2 à partir des sources en suivant les instructions sur le site officiel de Radare2.

Utilisation de Base

1. Lancer Radare2

Pour lancer Radare2, vous pouvez simplement exécuter la commande suivante :

r2

Cela ouvrira l'interface en ligne de commande de Radare2.

2. Analyser un Fichier Binaire

Pour analyser un fichier binaire, vous pouvez utiliser la commande suivante :

r2 /chemin/vers/fichier_binaire

Une fois le fichier binaire chargé, vous pouvez utiliser diverses commandes pour analyser le fichier. Par exemple, pour afficher les informations sur le fichier, vous pouvez utiliser la commande i :

i

3. Désassembler un Fichier Binaire

Pour désassembler un fichier binaire, vous pouvez utiliser la commande pd (print disassembly) :

pd

Cela affichera le désassemblage du fichier binaire.

Exemples d'Utilisation Avancée

1. Analyser les Fonctions d'un Fichier Binaire

Pour analyser les fonctions d'un fichier binaire, vous pouvez utiliser la commande afl (analyze functions list) :

afl

Cela affichera une liste des fonctions trouvées dans le fichier binaire.

2. Afficher les Strings d'un Fichier Binaire

Pour afficher les strings d'un fichier binaire, vous pouvez utiliser la commande izz (strings) :

izz

Cela affichera les strings trouvées dans le fichier binaire.

3. Utiliser le Débogueur de Radare2

Pour utiliser le débogueur de Radare2, vous pouvez utiliser la commande db (debug) :

db /chemin/vers/fichier_binaire

Cela lancera le débogueur et vous permettra de déboguer le fichier binaire.

4. Analyser les Importations et Exportations d'un Fichier Binaire

Pour analyser les importations et exportations d'un fichier binaire, vous pouvez utiliser les commandes ii (imports) et ie (exports) :

ii ie

Cela affichera les importations et exportations trouvées dans le fichier binaire.

5. Utiliser des Scripts et des Plugins

Radare2 supporte l'utilisation de scripts et de plugins pour automatiser des tâches spécifiques. Vous pouvez écrire des scripts en utilisant le langage de script intégré de Radare2 ou utiliser des plugins existants.

Par exemple, pour exécuter un script, vous pouvez utiliser la commande . (dot) suivie du chemin vers le script :

. /chemin/vers/script.r2

Conclusion

Radare2 est un framework puissant et flexible pour l'ingénierie inverse, offrant une large gamme d'outils pour l'analyse de binaires, le débogage, le désassemblage, et bien plus encore. En utilisant les fonctionnalités de base et avancées de Radare2, vous pouvez analyser des fichiers binaires, des logiciels malveillants, ou des applications pour identifier des vulnérabilités et comprendre leur fonctionnement interne. Pour plus d'informations, vous pouvez consulter la documentation officielle de Radare2.

Liens :

https://github.com/radareorg/radare2

https://opensource.com/article/21/1/linux-radare2

https://www.youtube.com/watch?v=oW8Ey5STrPI&list=PLg_QXA4bGHpvsW-qeoi3_yhiZg8zBzNwQ

Youtube :


Mise en garde concernant l'utilisation des outils de cybersécurité

L'utilisation des outils de cybersécurité présentés sur ce site est soumise à des considérations légales et éthiques importantes. Avant d'utiliser ces outils, nous vous encourageons à prendre en compte les points suivants :

- Cadre légal : L'utilisation de certains outils de cybersécurité peut être réglementée par la loi dans votre pays ou région. Il est de votre responsabilité de vous informer sur les lois en vigueur concernant la cybersécurité, la protection des données et la vie privée. L'utilisation non autorisée de ces outils peut entraîner des poursuites judiciaires et des sanctions pénales.

- Consentement : Assurez-vous d'obtenir le consentement explicite des parties concernées avant d'utiliser des outils qui pourraient intercepter, surveiller ou analyser des données. Le respect de la vie privée des individus est primordial.

- Utilisation éthique : Les outils de cybersécurité doivent être utilisés de manière éthique et responsable. Ils ne doivent pas être employés à des fins malveillantes, telles que le piratage, le vol de données ou toute autre activité illégale.

- Responsabilité : En utilisant ces outils, vous reconnaissez que vous le faites à vos propres risques. Nous ne saurions être tenus responsables des conséquences résultant de l'utilisation de ces outils, y compris, mais sans s'y limiter, les dommages matériels, les pertes de données ou les poursuites judiciaires.

- Formation et expertise : Il est recommandé de suivre une formation adéquate et de posséder les compétences nécessaires avant d'utiliser des outils de cybersécurité. Une mauvaise utilisation peut entraîner des résultats indésirables et des risques pour la sécurité.

En utilisant ce site et les outils qui y sont présentés, vous acceptez de respecter ces conditions et de vous conformer à toutes les lois applicables.

Formateur

Bertrand LECLERCQ

Consultant DevSecOps & Data Engineer


Avec 25 ans d'expérience dans le développement logiciel et une certification en Data Engineering de l'École des Mines Paris - PSL, je suis passionné par la cybersécurité, le big data et le DevOps. J'aime partager mes connaissances et aider la communauté à renforcer sa posture de sécurité.

J'ai créé une base de vulnérabilités librement accessible et je me forme en continu sur des plateformes comme TryHackMe. Mon objectif ? Démocratiser la cybersécurité et permettre à chacun de mieux comprendre les enjeux.

J'ai une solide expertise dans la conception et le déploiement de solutions sécurisées, ainsi qu'une expérience éprouvée dans la gestion de projets complexes. Maîtrisant un large éventail de technologies (Python, Go, Java, Docker, Kubernetes, etc.), je suis convaincu que la sécurité doit être intégrée dès le début du cycle de développement.

Le projet NoHackMe vous permet d'effectuer une veille Cyber, vous permet de découvrir le monde de la Cybersécurité ainsi qu'une section formation Cyber

Soutenez No Hack Me sur Tipeee