Comme l’indique l’Agence dans un billet explicatif :
Envoyé par NSA
- un outil qui est livré avec une suite d'outils d'analyse logicielle permettant d'analyser le code compilé sur diverses plateformes, notamment Windows, macOS et Linux
- un framework dont les capacités incluent le désassemblage, l'assemblage, la décompilation, la représentation graphique et la création de scripts, et des centaines d'autres fonctionnalités
- un outil qui prend en charge une grande variété de jeux d'instructions de processeur et de formats exécutables et peut être exécuté à la fois en modes interactif et automatisé.
- la possibilité pour les utilisateurs de développer leurs propres composants et / ou scripts de plug-in Ghidra à l'aide de l'API exposée
Une page d'aide est disponible pour les développeurs qui souhaitent l'utiliser. Vous en saurez plus par exemple sur la façon de l'installer, de l'utiliser etc. La NSA a pris également la peine de fournir une FAQ qui sera améliorée en fonction des questions que pourront poser les développeurs de la communauté.
La NSA rend disponibles via Open Source Software certains des outils qu'elle a développés en interne
Ghidra est l’un des nombreux projets de logiciels open source développés au sein de la National Security Agency. Il faut préciser qu’en juin 2017, la NSA a fourni une liste d’outils qu’elle a développés et qui sont désormais accessibles au public via Open Source Software (OSS) dans le cadre de son TTP (Technology Transfer Program). Pour rappel, c’est dans le cadre de son programme TTP que la NSA transfère la technologie qu’elle a développée en interne à l'industrie, au milieu universitaire et à d'autres organismes de recherche, des transferts qui vont « profiter à l'économie et à la mission de l'Agence ».
Bien sûr, le programme comporte un large éventail de technologies brevetées dans de multiples domaines technologiques.
Pourquoi l’OSS ? La NSA affirme que cette dernière « invite au développement coopératif de la technologie, en encourageant l'utilisation générale et l'adoption. Le public bénéficie en adoptant, en améliorant, en adaptant ou en commercialisant le logiciel. Le gouvernement bénéficie des améliorations apportées par la communauté open source à la technologie ».
Parmi ces outils figurent :
Apache Accumulo : un magasin de clés/valeurs réparti, qui fournit un stockage et une récupération de données robustes et évolutifs. Il ajoute un contrôle d'accès basé sur les cellules et un mécanisme de programmation côté serveur qui peut modifier les paires de clé/valeur à différents points du processus de gestion des données.
Parmi les fonctionnalités majeures, la NSA évoque :
- la programmation côté serveur : Accumulo dispose d'un mécanisme de programmation (appelé Iterators) qui peut modifier les paires de clé/valeur à différents points du processus de gestion des données ;
- contrôle d'accès par cellule : chaque paire de clé/valeur Accumulo possède sa propre étiquette de sécurité qui limite les résultats de requêtes basés sur les autorisations d'utilisateur ;
- conçu pour l'évolutivité : Accumulo s'exécute sur un cluster en utilisant une ou plusieurs instances HDFS. Les nœuds peuvent être ajoutés ou supprimés lorsque la quantité de données stockées dans Accumulo change ;
- stable : Accumulo dispose d'une API client stable qui suit la version sémantique. Chaque version d'Accumulo passe par des tests approfondis.
CASA (Certificate Authority Situational Awareness): qui révèle les certificats invalides provenant d'autorités de certification de confiance, sur systèmes Windows. CASA est disponible en tant qu’application Splunk.
JAVA PATHFINDER MANGO (JPF-MANGO) : outil d'analyse de code statique s'appuyant sur des méthodes formelles. Il fait partie du projet NASA Ames Java PathFinder, permettant de vérifier des binaires exécutables Java (bytecode).
APACHE NIFI : qui automatise le flux de données entre les systèmes. NiFi met en œuvre des concepts de programmation basée sur le flux et résout les problèmes courants de flux de données rencontrés par les entreprises.
Certains des capacités et objectifs de haut niveau d'Apache NiFi incluent :
- une interface utilisateur basée sur le Web qui propose une expérience sans interruption entre la conception, le contrôle, la rétroaction et le suivi ;
- un logiciel hautement configurable : il est par exemple possible d’appliquer une priorité dynamique ou de modifier le flux à l’exécution ;
- la provenance des données : l’outil donne la possibilité de suivre le flux de données du début à la fin ;
- conçu pour l'extension : avec cet outil, vous serez en mesure de créer vos propres processeurs et plus encore ;
- sécurité : il embarque le SSL, SSH, HTTPS, du contenu chiffré et, etc. Il dispose également d’une autorisation multilocataire ainsi que d’une autorisation interne / gestion des politiques.
OPENATTESTATION : qui vérifie l'intégrité du système en établissant une mesure de base du module TPM (Trusted Platform Module) d'un système et surveille les changements dans cette mesure. Initialement basé sur le logiciel d'intégrité de l'hôte de NSA au démarrage (HIS).
Les principales caractéristiques comprennent :
- la prise en charge des principaux systèmes d'exploitation hôtes Linux ;
- le schéma de rapport basé sur PCR ainsi que les règles de politique ;
- l’API de requête basée sur RESTful ;
- la mise en œuvre du portail web/interface graphique de référence ;
- le relevé/comparaison des données historiques des RAP ;
- la gestion de la liste blanche ;
- le contrôle d'accès flexible au serveur d'attestation ;
- la prise en charge de Tomcat 2-way SSL/TLS pour les API de requête ;
- les rapports SAML.
Dans la page répertoriant les outils mis à la disposition du public, la NSA note que certains d'entre eux seront « bientôt » disponible, comme :
- EOWS, un outil prototype Web qui met en œuvre les fonctionnalités OCIL (Open Checklist Interactive Language) pour créer, gérer et répondre à des questionnaires.
- OPAL, qui gère et standardise les disques durs commerciaux existants.
- PRESSUREWAVE, qui couple des fonctionnalités de stockage d’objets d’entreprise avec un langage de politique flexible pour la personnalisation du contrôle d’accès, la conservation et le stockage des données au sein du même système
Télécharger Ghidra
Source : NSA, technologies de la NSA publiées en open source
Et vous ?
Allez-vous l'essayer ?
Voir aussi :
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
USA : une sous-traitante de la NSA écope de plus de 5 ans de prison pour divulgation d'un rapport sur les cyberattaques attribuées aux Russes
La NSA annonce la destruction de millions de données d'appels collectées depuis 2015, qu'elle n'était pas autorisée à exploiter
La NSA aurait lancé un programme d'espionnage visant à pister les utilisateurs de bitcoins du monde entier, d'après des documents publiés par Snowden
Trois exploits de la NSA réécrits pour affecter toutes les versions de Windows lancées à partir de l'an 2000