L’un des événement majeurs de la conférence RSA (une série de conférences portant sur la sécurité de l'information) du 4 au 8 mars prochain à San Francisco sera sans doute la présentation par la NSA au grand public de son outil d’ingénierie inversée dénommée GHIDRA en open source. On pourrait peut-être dire que l’agence gouvernementale est devenue ami du open source depuis 2017 après la création de son compte GitHub. En effet, courant juin 2017, la société gouvernementale avait fourni une liste d’outils qu’elle avait développé en interne et qui sont désormais accessibles au public via Open Source Software (OSS) dans le cadre de son programme TTP (Technology Transfer Program). D’après le site de la NSA, le programme de transfert de technologie transfère la technologie mise au point par la NSA à l'industrie, aux universités et à d'autres organismes de recherche, au profit de l'économie et de la mission de l'Agence. Le programme dispose d'un vaste portefeuille de technologies brevetées dans plusieurs domaines technologiques.
Le dépôt GitHub de la société présente plus de 32 projets à code source ouvert dont Apache Accumulo, un magasin clé/valeur trié et distribué qui fournit un stockage et une récupération de données robustes et évolutifs et ajoute un contrôle d'accès basé sur les cellules et un mécanisme de programmation côté serveur permettant de modifier les paires clé/valeur à différents moments du processus de gestion des données ; ou encore Apache Nifi, son célèbre outil pour automatiser le flux de données entre les systèmes. Ce dernier met en œuvre les concepts de la programmation par flux et résout les problèmes de flux de données communs rencontrés par les entreprises. Cette fois, c’est au tour de l’outil d’ingénierie inversée GHIDRA d’être publié en open source le 5 mars prochain. Il s’agit là, d’un logiciel pour désassembler pour décomposer les fichiers exécutables en un code d’assemblage pouvant ensuite être analysé par les humains.
Le logiciel peut également analyser les fichiers binaires de tous les principaux systèmes d'exploitation, tels que Windows, Mac, Linux, Android et iOS, et une architecture modulaire permet aux utilisateurs d'ajouter des packages au cas où ils auraient besoin de fonctionnalités supplémentaires. L’outil serait développé en Java avec une interface graphique conviviale comme l’annonce le site de la conférence. « La NSA a développé un framework d’ingénierie inversée de logiciels appelé GHIDRA, qui sera présenté pour la première fois à RSAC (RSA Conférence) 2019. Une fonctionnalité d'interface graphique interactive permettant aux ingénieurs de rétro-exploitation de tirer parti d'un ensemble intégré de fonctionnalités s'exécutant sur diverses plates-formes, notamment Windows, Mac OS, et Linux et prend en charge une variété de jeux d’instructions de processeur. La plateforme GHIDRA inclut toutes les fonctionnalités attendues dans les outils commerciaux haut de gamme, avec des fonctionnalités nouvelles et étendues de la NSA, développées de manière unique, et sera publiée pour une utilisation publique gratuite à RSA », lit-on sur le site de RSA Conference.
Security Affairs informe que le logiciel a été mentionné pour la première fois dans les publications dénommées Vault 7 de Wikileaks. C’est une série de documents que WikiLeaks avait commencé à publier le 7 mars 2017 et qui donnaient des détails sur les activités de la CIA dans le domaine de la surveillance électronique et de la cyber-guerre.
Dans son article, WikiLeaks indiquait avoir obtenu des milliers de fichiers qui proviendraient d'un réseau de haute sécurité de la CIA qui détaille les techniques, les outils et les capacités de piratage de la CIA. Un trésor de fichiers qui présente également des informations sur GHIDRA. Le magazine a d’ailleurs saisi l’occasion pour dire comment installer le logiciel. Pour installer GHIDRA, écrit-il, il faut simplement à décompresser les fichiers zip dans un dossier de votre choix. Chacun des packages Ghidra est destiné à être décompressé directement au-dessus de la même structure de dossiers.
Par exemple, l'extraction de Ghidra_7.0.2_TSSI_20151120_common.zip dans le dossier C:\Ghidra décompressera tout dans C:\Ghidra\ghidra_7.0.2 . Les autres packages de la version 7.0.2 déposeront leurs fichiers dans la même structure de répertoires relatifs. Quelle que soit la plate-forme utilisée pour exécuter Ghidra ou les types de fichiers binaires que vous allez analyser dans Ghidra, vous aurez besoin du package commun. D'autres packages offrent la possibilité d'analyser différentes plates-formes (Windows, OSX, Linux, etc.) ou d'inclure des plugins permettant des fonctionnalités supplémentaires (Cryptanalyse, interaction avec OllyDbg, le débogueur Ghidra).
En se référant au site communautaire Reddit, on remarque que certains comparent l’outil à un autre de la même fonction appelé IDA. Pour eux, bien que IDA soit payant et ne disposant pas d’une interface graphique aussi meilleure que GHIDRA, il serait mieux que ce dernier surtout dans sa façon de gérer les fichiers exécutables. Pour d’autres, c’est une bonne chose de disposer à portée de main un tel outil gratuitement à défaut de payer de fortes sommes pour s’approprier IDA. D’autres comparaison avec IDA interviennent également en l'occurrence ceux qui qualifient IDA d’être nettement meilleur que GHIDRA à certains égards. Ils estiment que les gens n’ont pas choisi IDA uniquement pour la qualité mais que GHIDRA était très restreint.
Même les personnes ayant accès à GHIDRA étaient hésitantes, car elles ne voulaient pas apprendre un outil qu’elles ne pourraient pas offrir à un autre employeur. Les autres acteurs de ce marché, Binari Ninja et Hopper Disassembler, sont beaucoup plus récents, disent-ils. Pour s’expliquer, ils demandent d’imaginer présenter un nouvel éditeur, tel que vi ou emacs, mais avec une toute autre chose. Cela pourrait même être un éditeur légèrement meilleur. L'absorption sera lente. Les gens ne veulent pas réapprendre ou racheter. Selon eux, jusqu'à récemment, les gens préféreraient IDA plutôt que GHIDRA.
Sources : Security Affairs, RSA Conference
Et vous ?
Qu'en pensez-vous ?
Entre GHIDRA et IDA, lequel préféreriez-vous ? Pourquoi ?
Voir aussi
La NSA rend disponibles via Open Source Software certains des outils qu'elle a développés en interne dans le cadre de son programme TTP
La NSA aurait découvert l'identité réelle de Satoshi Nakamoto, le mystérieux créateur du Bitcoin
Un ex-employé de la NSA condamné à 5,5 ans de prison pour être rentré avec des infos classifiées, il assure qu'il voulait une promotion
GHIDRA, le framework d'ingénierie inverse de logiciels de la NSA sera publié en open source
Le 5 mars prochain
GHIDRA, le framework d'ingénierie inverse de logiciels de la NSA sera publié en open source
Le 5 mars prochain
Le , par Bill Fassinou
Une erreur dans cette actualité ? Signalez-nous-la !