La NSA a publié Ghidra, son outil open source du reverse engineering ou retro-ingénierie, que les utilisateurs peuvent utiliser pour analyser les applications internes. Ceci permet notamment de rechercher des failles de sécurité et autres bugs.
L’outil, disponible au téléchargement sur son site officiel et sur Github, est sous licence Apache 2.0 et requiert un environnement d’exécution Java.
Alternative intéressante d’IDA pro, Ghidra propose de nombreuses fonctionnalités comme le désassemblage et la décomposition de fichiers exécutables, la création et la représentation graphique de scripts, l’analyse de codes binaires…
Ghidra, dévoilé lors de la conférence RSA
C’est lors d’un discours lors de la conférence RSA de 2019 à San Francisco que Rob Joyce, célèbre pirate informatique et conseiller en cybersécurité auprès du directeur de la NSA (National Security Agency), a dévoilé l’outil d’analyse de code Ghidra. L’Agence nationale de la sécurité espère que son code open source suscitera une renaissance de la recherche de logiciels sécurisés, et a rassuré les participants en confirmant l’absence de code d’espionnage.
Failles suspectées dans l’outil de reverse engineering
“Il n’y a pas de backdoor, […] Il s’agit de la dernière communauté vers laquelle vous souhaitez diffuser quelque chose avec un backdoor installé”
Rob Joyce, conseiller de la NSA
La NSA peut difficilement introduire une vulnérabilité accessible à distance dans une suite logicielle, et de surcroît la cacher aux yeux de white hat confirmés. Malgré tout, les soupçons grandissent.
Matthew « HackerFantastic » Hickey, cofondateur de la boutique de sécurité britannique Hacker House, a déclaré au magazine d’actualité technologique The Register qu’il avait trouvé un élément inattendu dans l’outil.
Lors de l’exécution de Ghidra en mode débogage, celui-ci ouvre le port 18001 sur votre réseau local, accepte et exécute des commandes distantes à partir de tout ordinateur pouvant se connecter à ce réseau.
Par défaut, le mode débogage n’est pas activé, bien qu’il s’agisse d’une fonctionnalité proposée.
Comment se soustraire à la faille de Ghidra
Mais pas de panique, cette faille est loin d’être fatidique !
Il s’agit plus d’un bugdoor que d’un backdoor qui peut être neutralisé en modifiant le script du shell du lanceur afin que le logiciel n’écoute que les connexions à partir de la boîte hôte.
Ghidra ouvre JDWP ( Java Debug Wire Protocol ) en mode débogage en écoutant le port 18001, vous pouvez l’utiliser pour exécuter du code à distance .. pour corriger ça, modofiez la ligne 150 de support / launch.sh de * à 127.0.0.1 https://t.co / J3E8q5edC7
Hacker Fantastic (@hackerfantastic) March 6, 2019
Un porte-parole de la NSA a expliqué que le port ouvert devait permettre aux équipes de collaborer et de partager des informations et des notes en même temps via le réseau.
Matthew Hickey a cependant déclaré que cette fonctionnalité est fournie par un autre port réseau.
“Le projet partagé utilise un port différent, 13100, alors non, ce n’est pas la même fonction. Ils ont commis une erreur et ont mis * à la place de localhost lors de l’activation du mode débogage pour Ghidra, ” a déclaré Hickey au journal The Reg.
Hickey, journal The Reg