Open-source à l'ANSSI

L’investissement de l’ANSSI répond à un réel enjeu de sécurité et de souveraineté, pour protéger les biens communs et investir dans des technologies et des solutions d’avenir.

Publié le 21 Juillet 2022 Mis à jour le 13 Novembre 2023

L’investissement de l’ANSSI – en tant que contributeur logiciel libre au sein de l'Etat - se veut pragmatique. Il répond à un réel enjeu de sécurité et de souveraineté, pour protéger les biens communs et investir dans des technologies et des solutions d’avenir.

Cette démarche se fonde sur les possibilités inédites qu’offre l’open source en termes d’adaptation, de maîtrise, d’évaluation et de diffusion, à la condition d’y consacrer les ressources nécessaires. Pour l’ANSSI, l’open source permet de développer les compétences indispensables à la maîtrise de technologies clés et de les partager autour de cas d’usage spécifiques.

Le logiciel libre facilite le partage des connaissances et des résultats, permet leur évaluation par les pairs, mais aussi de bénéficier des éventuelles contributions de la communauté et des acteurs du numérique.

L’ANSSI s’investit ainsi dans le logiciel libre pour répondre à de multiples objectifs : élaborer des solutions adaptées à de nouveaux cas d’usage, sécuriser les composants de base les plus utilisés, mais également développer, entretenir et partager sa compétence et sa maîtrise des technologies clés du numérique.

Elle est à la fois utilisatrice de technologies open-source, mais aussi fortement contributrice.

Type de contributions

L’agence est depuis longtemps impliquée dans de nombreux projets open-source, par les contributions de ses agents et la publication de plusieurs de ses outils. 
La loi pour une République numérique de 2016 a fait des codes sources écrits par les administrations des données publiques, ayant vocation à être publiées. Nonobstant cette obligation (qui comporte certaines exceptions, par exemple pour des raisons de sécurité informatique), les publications de l'ANSSI peuvent se classer dans différentes catégories :

  • les preuves de concept, qui sont publiées en l'état, sans garantie de maintenance ni de support. Elles ont servi de support à des travaux ponctuels (hackathon, écriture d'article, etc.), et sont publiées afin d'être utilisées par d'autres, par exemple pour reproduire des travaux publiés dans un article scientifique ;
  • les outils utiles au quotidien pour l'un ou l'autre des métiers de l'ANSSI (opérationnel ou non), sont en général maintenus le temps qu'ils restent utiles en interne ou auprès de ses partenaires ;
  • les grands projets, emblématiques de l'engagement de l'agence pour l'open source, pour lesquels l'ANSSI a cherché à élaborer une stratégie de publication, de coopération et de communication, ainsi  qu'une feuille de route publique ;
  • les contributions à des projets open-source existants, que ce soit pour corriger des bugs (de sécurité en général, mais parfois fonctionnels) ou afin d'améliorer les projets, de façon plus ou moins importante.

Projets en source ouverte

L'ANSSI pilote plusieurs grands projets open-source, principalement dans l'organisation Github ANSSI-FR.

DFIR ORC

DFIR ORC est un ensemble d'outils de recherche de compromission, utilisés en particulier par la sous-direction des Opérations lors de traitement d'affaires.

WooKey

WooKey est un projet destiné à faciliter le prototypage de solutions durcies destinées à l'IoT et aux périphériques embarqués. Il comprend un micro-noyau (eWoK), un environnement de développement (Tataouine) ainsi que des briques de bases comme le support des mise à jour sécurisées, des bibliothèques cryptographiques, l'isolation mémoire via la MPU, etc.

Le projet possède sa propre organisation Github.

Dans l’organisation Github ANSSI-FR, on peut également trouver divers outils opérationnels comme DFIR-O365RC, DFIR4vSphere ou ADTimeline, ou encore des preuves de concept comme SmartPGP, ultrablue ou la libecc.

Certains projets plus autonomes ou regroupant de multiples dépôts sont publiés à des emplacements spécifiques :

  • Rusticata est un ensemble de parseurs « sûrs » écrits en Rust, utilisés en particulier avec l'outil Suricata ;
  • CW-LEIA : dépôts du projet LEIA (Lab Embedded ISO7816 Analyzer A Custom Smartcard Reader for the ChipWhisperer).
  • Keysas (Le Guichet): Keysas est un prototype de station de décontamination de fichiers avec un focus sur la sécurité de la station elle-même. 

Ces organisations sont parfois référencées sur Github comme organisations gouvernementales ainsi que dans l'inventaire DINSIC des dépôts de code sources des organismes publics.

Projets et contributions historiques

  • CLIP OS : un système d'exploitation durci sur base Linux visant des environnements multiniveaux (cohabitation d'environnement de différents niveaux de sensibilité) ; 
  • Caml PKCS#11 : outils PKCS#11 en OCaml (Caml Crush et opkcs11-tool), notamment utilisés dans CLIP  4 ;
  • Pycrate : bibliothèque d'encodeurs et de décodeurs de différents protocoles et formats de fichiers (p. ex. ASN.1, CSN.1) ;
  • Parsifal : moteur de parsing en OCaml ;
  • Concerto : outils d'analyse de données TLS ;
  • StemJail : outils de création et de mise à jour dynamique de conteneurs Linux non-privilégiés ;
  • Landlock : fork de Linux contenant les différentes versions du module de sécurité Landlock ;
  • Caradoc : parseur et validateur PDF ;
  • IVRE est un framework de reconnaissance (ou cartographie) réseau qui se base sur des données collectées de façon passive et active. Il peut par exemple être utilisé comme alternative maîtrisée à Shodan, ou encore pour créer une infrastructure de Passive DNS. 

Contribution à des projets extérieurs

L'ANSSI et ses agents sont contributeur techniques à de nombreux logiciels libres. On peut citer en particulier le noyau Linux, la distribution Debian (plusieurs agents sont membres développeurs de la distribution) ou encore le logiciel Suricata (voir section OISF).

GPO Check, GPO2SQL et GPOlist sont des outils de vérification de GPO Windows.

Scapy est environnement interactif et bibliothèques de génération, manipulation et réception de messages réseaux.

Communauté : Open Information Security Foundation

L'ANSSI a rejoint l'Open Information Security Foundation (OISF) et le projet Suricata en tant que partenaire Gold de ce consortium.

Suricata est un moteur de haute performance de détection et de prévention d’intrusion dans les réseaux informatiques développé et distribué sous licence libre. En rejoignant l’OISF et en soutenant le projet Suricata, l’ANSSI marque une nouvelle fois l’engagement de la France dans la cybersécurité de ses infrastructures critiques mais également de chacun de ses citoyens. L’OISF, ONG fonctionnant sur un mode communautaire, rassemble les volontaires et les acteurs industriels qui contribuent en temps, en code et par leurs retours sur Suricata. Le succès de Suricata est le résultat direct des efforts et des contributions de cette communauté.

L’ANSSI est convaincue du rôle majeur que Suricata peut jouer dans le développement de nouvelles générations innovantes de systèmes de détection et de prévention d’intrusion intégrant des briques de logiciel libre. Ensemble, l’OISF et l’ANSSI souhaitent soutenir des solutions performantes et de confiance pour la cybersécurité.

Grâce aux partenariats et au support des membres du consortium OISF tels que l’ANSSI, Suricata continuera de s’améliorer et d’être un moteur de haute performance de détection et de prévention d’incidents réseau de haut niveau de confiance et de renommée mondiale. Communiqué de presse : OISF ANSSI

Autres types d'implication

L'ANSSI s'investit également dans les communautés du logiciel libre par d'autres moyens : financement d'évaluations de sécurité de logiciels libres, rédaction collaborative de guides (comme le guide de développement Rust), ou sponsoring de conférences comme Kernel Recipes.

Sur le même sujet :