Projet CLIP OS
Le projet CLIP OS est un projet open source conçu par l’Agence nationale de la sécurité des systèmes d’information (ANSSI). Il est aujourd'hui archivé, les développements et sa maintenance ne sont plus assurés. Il est toujours possible de consulter les archives du projet sur le répertoire github suivant : https://github.com/clipos/. L’objectif principal du projet est de construire un système d’exploitation durci, capable de gérer des informations de plusieurs niveaux de sensibilité. Pour l’atteindre, le projet se base sur le noyau Linux et un ensemble de logiciels open source.
Historique et publication
Initialement développé pour répondre aux besoins des administrations, les précédentes versions de CLIP OS n’étaient pas disponibles publiquement.
Depuis septembre 2018, les sources de la nouvelle version du projet sont publiques et le projet est ouvert aux contributions extérieures. Ce sont ces deux versions du projet qui sont publiées :
-
Le code source et la documentation (en français) de CLIP OS version 4. L’ensemble du code source est publié à titre de référence pour permettre la contribution de patchs upstream et faciliter les développements futurs. Pour plus d’informations, voir la page dédiée à la version 4.
-
Le code source et la documentation (en anglais) de CLIP OS version 5. Cette version est en cours de développement. Elle est considérée comme étant au statut de béta. Pour plus d’informations, voir la page dédiée à la version 5.
CLIP OS version 4
L’ensemble des sources de la version 4 du projet est publié à titre de référence. Cette version du projet est le résultat de plus de dix années de développement mené par l’ANSSI et inclut l’implémentation de nombreuses fonctionnalités de sécurité pour durcir un système d’exploitation basé sur le noyau Linux.
Avec le code source, nous avons déclassifié la documentation du projet (en français) qui contient notamment la description d’un grand nombre de fonctionnalités de sécurité ayant été implémentées dans la version 4 de CLIP OS.
Pour plus d’informations, voir la page dédiée à la version 4.
CLIP OS version 5
La version 5 est la dernière version, en cours de développement, du projet CLIP OS. Cette version est au stade béta, mais elle inclut déjà des fonctionnalités de sécurité intéressantes:
- garanties d’intégrité au niveau du système de fichiers ;
- séparation stricte entre les applications et les données du système ;
- support du Secure Boot avec UEFI.
De nouvelles fonctionnalités seront progressivement ajoutées et publiées.
Le développement est désormais réalisé publiquement et le projet est ouvert aux discussions, contributions et suggestions de la communauté.
Pour plus d’informations, voir la page dédiée à la version 5.
Contribuer au projet
Vous trouverez toutes les informations nécessaires pour participer au projet sur la page dédiée à la version 5.
Pourquoi l’ANSSI ouvre-t-elle le code source de CLIP OS ?
Cette démarche s’inscrit dans le « plan pour une action publique transparente et collaborative », porté par la DINSIC.
L’ouverture des codes sources répond aussi à une volonté de l’ANSSI de partager ses travaux et de permettre à tous de réutiliser le projet CLIP OS pour construire des systèmes durcis à base de noyau Linux.
L’ANSSI va-t-elle continuer à développer CLIP OS ?
Non. Le projet CLIP OS est aujourd’hui archivé, les développements et sa maintenance ne sont plus assurés. Il est toujours possible de consulter les archives du projet sur le répertoire github suivant : https://github.com/clipos/.
CLIP OS est-il « souverain » ?
Non. Si le développement du projet est initié et réalisé par des agents de l’ANSSI, la majeure partie du code source est issu de projets open source (noyau Linux, suite de compilation GCC, etc.). Le code source de CLIP OS est aujourd’hui ouvert à tous. Le projet est basé sur Gentoo Hardened et suit des principes similaires à Chromium OS ou au projet Yocto.
Licences utilisées pour les sources publiées
Le projet s’appuie sur beaucoup de logiciels open source développés publiquement. Les portions de code spécifiques au projet CLIP OS sont mises à disposition en open source (principalement sous licence LGPL 2.1+).
Fonctionnalités de sécurité et différences principales vis-à-vis des autres systèmes d’exploitation
Le projet se base sur plus de dix ans de développement interne à l’ANSSI pour créer un système d’exploitation durci. Les propriétés de sécurité suivantes ne sont généralement pas réalisables à partir des systèmes d’exploitation disponibles publiquement :
- Support du multi-niveau pour gérer des informations de plusieurs niveaux de sensibilité différents.
- Accès administrateur restreint en production : un administrateur ne doit pas pouvoir compromettre un système déployé en production ni accéder aux données utilisateurs.
- Construction du projet de façon totalement automatisée et réalisée intégralement à partir des sources.
- Opportunités d’intégration forte dans des environnements variés.
La liste des fonctionnalités de sécurité disponibles est présentée dans la documentation de chaque version. (les liens sont disponibles sur les pages pour la version 4 et la version 5).
Quelles différences y-a-il avec Qubes OS ?
Les projets CLIP OS et Qubes OS se ressemblent d’un point de vue objectifs fonctionnels mais diffèrent sur plusieurs points :
-
Le mécanisme principal d’isolation est différent :
-
CLIP OS utilise les primitives du noyau Linux pour créer des conteneurs, ainsi que des fonctionnalités supplémentaires apportées par VServer, des durcissements du noyau Linux (grsecurity pour la version 4) et un module de sécurité Linux (LSM) ad hoc. Cette approche permet d’avoir un contrôle fin des échanges de données (p. ex. notion de fichier, socket, processus) et des permissions (p. ex. code malveillant limité aux fonctionnalités du ring 3, limitation des appels noyau autorisés).
-
Qubes OS utilise la virtualisation matérielle via un hyperviseur (Xen), ainsi qu’une machine virtuelle (dom0) comprenant un système GNU/Linux et des services chargés d’échanger avec d’autres machines virtuelles.
-
-
Le rôle et le pouvoir d’un administrateur :
-
L’administrateur d’un système CLIP OS n’est pas en mesure de compromettre l’intégrité du système ni d’accéder aux données des utilisateurs. Il a à sa disposition uniquement un ensemble restreint d’options de configuration.
-
Avec Qubes OS, l’utilisateur principal de chaque machine virtuelle est aussi un administrateur de la machine virtuelle. L’administrateur système du cœur (dom0) peut modifier la configuration et accéder à toutes les données utilisateur sans restrictions.
-
Où sont les liens de téléchargement ? Puis-je l’installer sur mon ordinateur personnel ?
Dans la lignée de Gentoo, le projet est principalement disponible sous forme de code source qu’il faut compiler pour pouvoir exécuter sur un système. Il n’y a donc actuellement pas de version prête à l’emploi de CLIP OS 5. La documentation contient les instructions pour construire votre propre version de CLIP OS 5, que vous pourrez alors adapter à vos usages et à vos contraintes de déploiement.
Y a-t-il un rapport avec CAN CLIP (Renault) ou CLIP (Certifiable Linux Integration Platform) ?
Il n’y a aucun lien entre ces produits avec le projet CLIP OS de l’ANSSI. La similarité de nom est une coïncidence.
Comme « CLIP » est le nom historique du projet, il reste de nombreuses mentions dans les sources et la documentation de la version 4. Il faut cependant noter que le nom officiel unique de ce projet est désormais « CLIP OS ».
À propos de l’ANSSI
L’Agence nationale de la sécurité des systèmes d’information (ANSSI) est l’autorité nationale chargée d’assurer la sécurité des systèmes d’information de l’État et de contribuer à celle des opérateurs nationaux d’importance vitale (OIV). Nous apportons conseils, expertise et assistance technique pour prévenir la menace et traiter les incidents portant atteinte à la sécurité du numérique.
Nos 3 grandes missions sont la prévention, la protection et l’information au service de la confiance numérique.