Clip OS : l'Anssi ouvre son système sécurisé à tous les contributeurs

Clip OS : l’Anssi ouvre son système sécurisé à tous les contributeurs

Mais garde la main

Avatar de l'auteur
Guénaël Pépin

Publié dans

Internet

20/09/2018 9 minutes
27

Clip OS : l'Anssi ouvre son système sécurisé à tous les contributeurs

L'agence de sécurité part sur de nouvelles bases avec Clip OS 5, dernière mouture en date d'un système sécurisé lancé en 2005. En ouvrant son alpha à tous, elle compte sortir son outil de l'administration mais maintient son but : séparer les activités triviales des plus sensibles, en partant du cœur du système jusqu'à l'interface utilisateur.

L'agence de cybersécurité française, l'Anssi, ouvre le développement de son système d'exploitation « durci » Clip OS 5. En avril, elle annonçait l'ouverture de son code, dans le cadre du plan d'action de l'Open Government Project. Utilisé dans l'administration et chez des opérateurs d'importance vitale (OIV) depuis plusieurs années, il est reconstruit de zéro avec cette mouture, initiée il y a un an.

Le système est une des fiertés de l'agence, qui l'expose dans certains événements comme la Nuit du hack. Il était aussi présenté dans une conférence en juin 2015 au Symposium sur la sécurité des technologies de l'information et des communications (SSTIC) de Rennes, où l'agence est chez elle.

Deux environnements, deux versions

Son principe : deux environnements de travail séparés, l'un pour la navigation Internet classique et les opérations banales, l'autre pour obtenir et traiter des documents sensibles. Dans le jargon de l'Anssi, ces deux « cages » sont de niveau « bas » et « haut ».  Cette séparation est au cœur de Clip OS, qui cloisonne tant que possible les processus, en leur retirant tous les privilèges qui peuvent l'être.

Deux éditions sont mises en ligne. D'un côté, la « v4 » historique présentée en 2015, fournie avec sa documentation mais expurgée d'éléments internes à l'administration ou jugés peu intéressants. De l'autre, l'alpha de la « v5 », dont l'Anssi ouvre les portes. Le développement sera (enfin) collaboratif.

« Au départ, le projet n'a pas été conçu pour être open source. On a pris ce virage et pris en compte toutes ces considérations pour la version 5 » nous explique Timothée Ravier, ingénieur à l'Anssi. 

Limiter le danger en séparant les processus

Clip OS (marque déposée) est un système durci conçu à l'Anssi (ex-DCSSI) depuis 2005. Il est entré chez des opérateurs d'importance vitale dès 2009, et déployé plus largement en 2015, selon la conférence de Vincent Strubel en 2015. Il est utilisé au quotidien « par une grande partie des agents de l'Anssi », estime Timothée Ravier, sans plus de détails.

Dans Clip OS 4, le cloisonnement des deux environnements de travail est assuré par Linux-VServer, un logiciel de virtualisation. La séparation est menée directement via le noyau Linux, l'Anssi isolant le plus grand nombre de processus possibles. Aucun ne dispose de l'ensemble des droits administrateur (root), le compte root étant lui-même interdit à l'utilisateur.

La racine du système est impossible à modifier une fois celui-ci lancé. Le noyau est renforcé avec des correctifs particuliers, pas encore intégrés dans son édition officielle (upstream). Les bureaux sont dupliqués (le serveur X.Org est isolé et affiché via des visionneuses VNC), le serveur audio et le copier-coller sont cantonnés à chaque niveau.

Les clés USB peuvent être associées à un niveau particulier, via une configuration « invisible » aux autres systèmes. Celles sans configuration sont cantonnées au niveau de sécurité bas. Le système inclut aussi un multiplexage pour l'accès au matériel, comme les périphériques et la carte réseau. Clip OS exploite Caml Crush, un proxy PKCS#11 open source de l'Anssi, pour accéder à certains matériels, comme les cartes à puce.

L'accès au réseau est particulièrement sensible, la cage de niveau « bas » atteint Internet comme un système classique, quand celle de niveau « haut » passe nécessairement par un tunnel chiffré via un réseau privé virtuel IPsec (et possiblement Wireguard en « v5 »). Une édition spéciale de Clip OS est conçue pour servir de tunnel IPsec.

Clip OS 4Clip OS 4
Les périphériques sont attribuables à un « niveau », identifiés par un bouton latéral en « v4 » - Crédits : Anssi

À ne pas mettre entre toutes les mains

Clip OS se destine aux utilisateurs qui manipulent des documents sensibles. Les possibilités sont donc réduites. En juin 2015, Vincent Strubel lançait : « Si vous avez des demandes d'évolution fonctionnelle, ce n'est plus pour moi. [Mes collègues] vous expliqueront comment vous en passer ».

« C'est une blague, reprend Timothée Ravier. Mais clairement, l'idée est de ne pas tout faire. On conçoit un système pour des besoins particuliers, Clip OS n'est pas un système généraliste. » Il n'est pas question de développer des logiciels ou de mener des tests d'intrusion (pentest) avec Clip OS, deux activités pourtant habituelles à l'agence.

« Pour du pentest, vous devez disposer d'accès privilégiés sur votre machine, par exemple pour configurer votre carte réseau... Ce sont des choses dont un utilisateur lambda n'a pas besoin. Pour du développement, vous avez plus vite fait d'installer une distribution Linux classique » estime l'ingénieur.

« L'objectif n'est pas l'installation par l'utilisateur lui-même, mais dans une DSI, par exemple pour 100 postes, pour tenir compte du contexte local, de la configuration réseau... » résume l'Anssi. Clip OS n'est pas fourni clés en main, il nécessite une configuration et une infrastructure particulière. Il faut surtout former les utilisateurs, pour qu'ils utilisent effectivement le niveau de sécurité « haut » au besoin.

Des mises à jour transparentes, un système revu en « v5 »

« L'idée n'est pas de claquer une image de Clip OS sur un PC et roulez jeunesse, vous êtes sécurisé. Il faut réfléchir à l'architecture, déployer des passerelles, des infrastructures de gestion de clés, valider les configurations matérielles... » prévenait Strubel il y a trois ans. La philosophie n'a pas bougé en plus d'une décennie.

L'agence déplace les responsabilités vers l'administrateur, comme les mises à jour, transparentes pour l'utilisateur. Tout est mené en tâche de fond. L'ancien système est conservé dans une partition dédiée, jusqu'à ce que la version à jour démarre correctement.

L'outil sera reconstruit en « v5 », même s'il doit fournir les mêmes fonctions. « Il est compliqué de mettre à jour les versions précédentes vers la nouvelle, donc il faut réinstaller les postes en nouvelle version. On maintient le fonctionnement, donc la double partition. C'est le même fonctionnement que celui des téléphones Android aujourd'hui » nous précise Ravier.

Des logiciels de confiance

En 2015, Clip OS comptait  un millier de logiciels dédiés, c'est-à-dire des paquets Debian recompilés avec une chaine d'outils durcie. À l'exécution, un module de sécurité Linux attribue les capacités à chaque application. Un logiciel modifié ne se lancera pas, et les fichiers créés dans une partition utilisateur ne pourront jamais s'exécuter, promet l'agence.

Aucun logiciel finalisé (binaire compilé) ne sera fourni avec le code source de Clip OS 4. De même pour la « v5 », du moins dans un premier temps.

Un pas vers l'open source

L'Anssi est habituée au développement open source, son compte GitHub comptant 35 projets officiels, en plus de ceux auxquels contribuent ses agents. Pourtant, Clip OS 5 est sûrement celui qui l'engage le plus. « On s'inscrit dans le plan Open Government, mais on ne nous a pas forcé la main » assure Timothée Ravier.

Malgré tout, Clip OS était jusqu'alors « un projet interne à l'administration française », sans la moindre volonté d'ouverture du code. La refondation du système a été l'occasion. Il est toujours fondé sur l'édition durcie de Gentoo. Il continue de s'appuyer sur des projets tiers, comme PaX et le patch grsecurity, dont l'agence rediffuse la dernière version publique.

Dans cette ouverture du développement, l'Anssi garde le mot de la fin sur ce qui entre dans le projet. « Si quelqu'un arrive avec une fonctionnalité qu'on n'a pas marquée à faire, ce sera compliqué... Comme tout projet open source » estime Timothée Ravier.

Un calendrier encore flou

L'agence le promet : la feuille de route, le calendrier et les modifications seront publics. Pourtant, elle n'avait aucune idée du temps que prendrait l'atteinte d'une version « bêta » ou finale. Bien entendu, elle vise une certification Critères communs pour Clip OS 5, comme sa grande sœur.

Une dizaine de personnes contribuerait actuellement au projet au sein de l'Anssi, même si ce nombre varierait beaucoup. Cette future version n'inclut actuellement pas encore de couche IPsec ou d'interface graphique.

Pour l'installation, la logique ne change pas : Clip OS 5 est une série de briques à arranger soi-même, avec ses propres modifications, pour obtenir sa propre image du système.

L'Anssi compte tout de même fournir des versions de test, après avoir mis en place la seconde partie de son infrastructure de développement. Elle inclut une revue de code « performante » et la construction automatique d'images du système.

Qubes OS et autres systèmes durcis

Quand on l'interroge sur les systèmes « durcis » proposés par des groupes de cybersécurité, comme Kaspersky ou McAfee (plutôt tournés vers les systèmes industriels), Timothée Ravier botte en touche. « Nous savons que nous ne sommes pas seuls sur le marché des systèmes durcis. L'objectif est d'avoir un projet open source, réutilisable par tous indépendamment de ce qu'on veut en faire » répond-il.

Il ne voit pas Clip OS en concurrence avec Qubes OS, centré sur la séparation des applications et recommandé par Edward Snowden. Souvent pris comme référence des systèmes sécurisés, il est plutôt destiné à des utilisateurs avertis, qui gèrent eux-mêmes la sécurité de leur poste, juge l'ingénieur.

« Avec Qubes OS, il faut suivre le modèle de sécurité du poste. L'objectif de Clip OS est de proposer des contraintes et rôles à côté desquels on ne peut pas passer. L'administrateur n'a pas accès aux données de l'utilisateur, qui est confiné dans son environnement » résume l'ingénieur.

Avec ce lancement, l'Anssi compte déjà mesurer l'appétence pour son modèle et la volonté de tiers à contribuer. L'agence se refuse à tout pronostic, jouant l'humilité. La perspective d'un développement international, par exemple avec d'autres agences de cybersécurité, n'est pas écarté, même s'il n'aurait pas été évoqué jusqu'ici.

Écrit par Guénaël Pépin

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Deux environnements, deux versions

Limiter le danger en séparant les processus

À ne pas mettre entre toutes les mains

Des mises à jour transparentes, un système revu en « v5 »

Des logiciels de confiance

Un pas vers l'open source

Un calendrier encore flou

Qubes OS et autres systèmes durcis

Fermer

Commentaires (27)


Mais que fait la police d’NxI ! Un lien vers l’Inpi qui ne propose qu’un bouton “accepter tout” pour se conformer au RGPD…https://www.inpi.fr/fr …. on attend la saisie de la CNIL.



Blague à part, super article et très intéressant système. Petite question, la vélocité du système est au rendez vous malgré les couches de sécurité ? Car beaucoup de personnes se mettent en danger en désactivant des sécurité pour “aller plus vite” …


Je ne l’ai pas précisé mais oui, c’est taillé pour être réactif pour l’utilisateur malgré les couches de sécurité.








Gnppn a écrit :



Je ne l’ai pas précisé mais oui, c’est taillé pour être réactif pour l’utilisateur malgré les couches de sécurité.







Merci, un bel outil qui fait plaisir à voir. <img data-src=" />



Comme d’habitude, bien joué l’ANSSI !


Le must serait que ça serve de fondation pour la création d’un OS Souverain qu’on appelle régulièrement de ses voeux (genre dans les news sur les contrat open bar avec MS, par exemple) <img data-src=" />


&nbsp;A tester .



&nbsp;








secouss a écrit :



Petite question, la vélocité du système est au rendez vous malgré les couches de sécurité ? Car beaucoup de personnes se mettent en danger en désactivant des sécurité pour “aller plus vite” …





C’est pas un truc de windowsien ça, genre on arrête l’anti-virus ?

(question sérieuse)



Quand je pense qu’il avait été mis à mort dans Office 2003, le voila de retour en OS <img data-src=" />



Plus sérieusement, très bon article. Je pensais que cette histoire d’OS souverain était parti à la benne.


J’aime tout ce durcissement !








crocodudule a écrit :



J’aime tout ce durcissement !





<img data-src=" />



Encore un projet intra muros qui marine depuis 13 ans dans des laboratoires, sans vision commerciale ni même utile pour le commun des mortels. Déçu, mais pas étonné.

Le principal problème de l’ANSSI est d’émettre de bonnes recommandations, mais sans jamais donner de moyens “concrets” pour les appliquer dans nos entreprises, ce qui revient à balancer de la “viande crûe”, sous forme de PDF et de vent, aux administrateurs, en espérant qu’ils se débrouilleront avec.

Alors je n’ai rien contre des gens spécialisés en sécurité qui s’amusent ici entre eux, pour se fabriquer un GNU/Linux durci. Mais provenant d’une agence gouvernementale, payée par le contribuable français, on attendrait davantage des logiciels finalisés au quotidien, pour sécuriser rapidement nos réseaux et nos machines, quand cela est possible, bien entendu !

Et pour terminer : pourquoi une licence open source au lieu d’une licence libre ? Était-ce donc si difficile “d’accoucher” une fois pour toute du gros (et vieux) bébé, et de le laisser vivre sa vie ? En tout cas, c’est bien dommage de n’avoir pas su couper le cordon…


J’aime voir ce genre projets se développer, j’espère que ce genre de “bureau” containérisé va se démocratiser pour limiter l’escalade de privilège très commune à l’ensemble des utilisateurs.



À mon avis les problèmes principaux ne sont pas dans les technologies de container ou de virtualisation, mais dans l’affichage et la facilité d’utilisation (UI/UX), il faut empêcher au maximum l’utilisateur de pouvoir être piégé en donnant plus de droits qu’une application ait besoin.



D’ailleurs, un système d’exploitation fournissant lui-même les applications, via un gestionnaire de paquets ou de logiciels, pourrait vérifier l’utilité des permissions demandées par chaque application, et limiter d’autant plus une escalade de privilèges. Encore un avantage qu’on peut retrouver avec par exemple les distributions Linux (GNU ou non <img data-src=" />) ou les systèmes monolithiques.


Tu ne dois pas avoir compris quelque chose…

Va faire le nécessaire si tu es si bon pour sécurisé un windows (même XP) dont on a absolument pas les codes sources comme ils l’ont fait pour leur os.

&nbsp;



Quand à la licence, ils doivent avoir leur raison.


@micktrs

S’il est vrai qu’un logiciel privateur de liberté ne pourra jamais être considéré comme sécurisé de par sa nature même, il n’en reste pas moins que l’ANSSI pourrait déjà produire des scripts pour fixer bon nombre de réglages par défaut, que ce soit dans windows ou dans les logiciels annexes, libres ou non.

Mais c’est sûr que ne rien faire et dire je ne peux pas, c’est l’attitude la plus intelligente et constructive qui soit. Vous au moins,&nbsp; vous avez tout compris ! Bravo !


Avant de râler, c’est bien de se renseigner:

&nbsp;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&nbsp;open source&nbsp;(principalement sous&nbsp;licence LGPL 2.1+).c’est à dire, en libre.








OlivierJ a écrit :



C’est pas un truc de windowsien ça, genre on arrête l’anti-virus ?

(question sérieuse)







Exactement :( même sur des machines sécurisés ou les gars bidouilles pour réussir à mettre une clé USB non sécurisée bloquée par le système, je me connecte à l’intranet avec un navigateur non dédié bourré d’extensions débiles, ….



Brillant, ton idée, là. Déjà fait par McAfee, Kaspersky,…

Ça existe déjà. Ce n’est donc pas l’objectif de l’ANSI.








hansi a écrit :



Encore un projet intra muros qui marine depuis 13 ans dans des laboratoires, sans vision commerciale ni même utile pour le commun des mortels. Déçu, mais pas étonné.





Clip OS n’est pas un projet de recherche il découle d’un besoin interne, est utilisé et n’a pas vacation est être un projet commerciale.



Ils ont décidé de le rendre public je ne vois pas où est le problème.

&nbsp;



hansi a écrit :



Et pour terminer : pourquoi une licence open source au lieu d’une licence libre ?





Clip OS est publié sous différentes licences libre et open source.



D’ailleurs au passage dans l’écrasante majorité des cas un logiciel open source est également un logiciel libre et vis versa (d’ailleurs je ne sais pas si cela existe un logiciel open source qui serait libre)









hansi a écrit :



Encore un projet intra muros qui marine depuis 13 ans dans des laboratoires, sans vision commerciale ni même utile pour le commun des mortels. Déçu, mais pas étonné.





ça tombe bien cet OS n’a pas été conçu pour être commercialisé, et encore moins pour le commun des mortels.

L’ANSSI l’a développé pour ses besoins propres, et éventuellement pour quelques postes de quelques OIV.

mais si t’avais lu l’article, t’aurais sans doute compris ça. ^^









millman42 a écrit :



D’ailleurs au passage dans l’écrasante majorité des cas un logiciel open source est également un logiciel libre et vis versa (d’ailleurs je ne sais pas si cela existe un logiciel open source qui serait libre)







Je pense qu’il doit manquer un mot dans la phrase entre parenthèses, mais un logiciel open source n’est pas forcément libre.

C’est à dire que même si les sources sont accessibles, et modifiables, la licence peut interdire la diffusion ou l’exploitation de celles-ci. (par exemple le CryEngine et l’Unreal Engine donnent accès à leurs sources, mais sous conditions commerciales)









SebGF a écrit :



Je pense qu’il doit manquer un mot dans la phrase entre parenthèses, mais un logiciel open source n’est pas forcément libre.

C’est à dire que même si les sources sont accessibles, et modifiables, la licence peut interdire la diffusion ou l’exploitation de celles-ci. (par exemple le CryEngine et l’Unreal Engine donnent accès à leurs sources, mais sous conditions commerciales)





En effet je voulais dire un logicielle open source qui ne serait pas libre.



Sinon l’Unreal Engine n’est pas open source.

&nbsp;

Un logiciel qui interdit ou pose des limites sur la diffusion de celui-ci n’est ni libre ni open source.



Quel serait le véritable niveau d’effort pour accoucher d’un OS souverain sécurisé et facile à prendre en main, voir même instanciable ou virtualisable depuis un autre OS?


@trou



Est-ce que vous savez parler français ? Non, parce que quand je lis “Les portions de code spécifiques au projet CLIP OS sont mises à disposition en&nbsp;open source&nbsp;(principalement sous&nbsp;licence LGPL 2.1+).c’est à dire, en libre.



      ", personne n'y comprend rien... C'est de la "novlangue" qui mélange complètement deux choses qui n'ont rien à voir.    





La bonne manière de s’exprimer aurait été de dire que

certains codes sont sous licences open source, et d’autres sous licences

libres (comme la LGPL). Là au moins, on aurait compris la distinction. Je vous signale juste au passage que le noyau Linux est sous GPL2. Votre propos n’est donc pas complet non plus…



Ça ne change pas fondamentalement mon jugement précédent : la sécurité par l’obscurantisme, windows et mac os prouvent chaque jour que ça ne marche pas. Quant aux restrictions de l’open source, c’est de la liberté conditionnelle ou sous contrôle, donc ce n’est pas la liberté.



On n’est pas à moitié libre : soit on est libre, soit on ne l’est pas. C’est aussi simple à comprendre que cela !



&nbsp;@millman42

&nbsp;

De toute évidence vous ne comprenez pas les différences fondamentales entres logiciels libres et logiciels open source. Relisez donc la bibliographie de Stallman, où allez voir les nombreuses conférences en ligne où il aborde le sujet, avant d’utiliser des termes que vous ne maîtrisez pas. Je pense que tout le monde y gagnera dans le débat.


Enfin, Linux prouve chaque jour que la sécurité par l’open source ne fonctionne pas mieux.





Enfin on ne dit pas la sécurité par l’obscurantisme mais sécurité par l’obscurité, et ça s’applique quand la sécurité repose uniquement sur l’obscurité. Ce n’est bien évidemment pas le cas ni pour macOS, ni pour Windows.








hansi a écrit :



On n’est pas à moitié libre : soit on est libre, soit on ne l’est pas. C’est aussi simple à comprendre que cela !





Tu es libre d’être naturiste chez toi et dans les lieux dédiés ; mais dans l’espace public l’exhibitionnisme est un délit parce que les autres sont libres de ne pas être naturistes. Donc c’est pas aussi simple que ce que tu dis.



De toutes façons, vu le public visé, ça servirait à rien ou presque que leur OS soit 100% libre, vu qu’au final il nécessite une installation/configuration/administration relativement complexe, ça veut dire que derrière il doit y avoir des gens qui prennent la responsabilité d’installer ceci ou ça, donc au minimum il y a une revue de code à faire sur chaque soumission/contribution. P-têt qu’ils sont juste pas assez nombreux pour le faire complètement/correctement en fait ? Tu parlais du noyau Linux, mais ils sont combien à bosser dessus comparé à l’ANSSI ? <img data-src=" />









flan_ a écrit :



Enfin, Linux prouve chaque jour que la sécurité par l’open source ne fonctionne pas mieux.



Phrase qui ne veut absolument rien dire.

Tu entends quoi par “sécurité”? Les failles je présume? En effet, l’opensource ne fera pas mieux, puisque ce n’est pas en lisant du code qu’on les trouve. Par contre ca permet de vérifier que le logiciel fait bien ce qu’il est censé faire, et potentiellement d’aider à améliorer le code d’une facon ou une autre.



Certainement de l’ordre d’une poignée d’années de travail pour une personne seule…