Capsicum a été évoqué sur LinuxFr.org une première fois en 2011. C'est un projet de chercheurs de Cambridge concernant de nouvelles primitives de gestion des droits pour les systèmes UNIX, très prometteur et en passe d'être intégré à FreeBSD.
Voyons quels sont les mouvements autour de ce projet.
Journal Capsicum dans Linux : ça bouge !
Chers LinuxFrien-ne-s,
En 2011 je vous parlais de Capsicum (dépêche LinuxFr), un projet de chercheurs de Cambridge de nouvelles primitives de gestion des droits pour les systèmes UNIX, très prometteur et en passe d'être intégré à FreeBSD.
Linux n'avait à l'époque pas de bonne solution pour un sandboxing fin; en 2012, une revue complète du système seccomp (dépêche LinuxFr) apportait un mécanisme très fin de contrôle des appels systèmes, mais ne gérant pas le transfert de (…)
Journal La justice et la technologie : incompréhension méprisable ou expérience à respecter ?
Cher journal,
Membre d'une génération qui a grandi avec la technologie informatique, j'ai longtemps eu une opinion très violente sur les activités du monde législatif ou judiciaire qui touchent à l'informatique. Pour moi, les gens occupant ces fonctions essayaient d'appliquer des visions dépassées (quand elles n'étaient pas en plus corrompues par l'intérêt d'entreprises privées) à un monde nouveau, sans faire l'effort de le comprendre.
quand la loi entérine l'idée qu'il est illégal de contourner des DRM, on est scandalisé (…)
Journal Annonce : un blog sur une équipe de recherche en langages de programmation
Cette année j'ai lancé un blog (anglophone) en commun avec les autres membres de mon équipe de recherche, Gallium, qui travaille sur les langages de programmation et la preuve de programme. C'est aussi l'équipe qui a conçu et maintient le langage de programmation OCaml, donc une partie des articles concernent ce langage et son développement—au passage, c'est un logiciel libre dans l'écosystème duquel de nombreuses contributions sont possibles.
Voilà, on m'a signalé que ça pourrait intéresser des LinuxFRiens donc (…)
Journal Rendre publics les votes sur les commentaires
Journal Calimaq : Défense et illustration de la clause non commerciale
Résumé en une ligne pour la page principale : des gens proposent de retirer la clause Non Commercial des licences Creative Commons. Les libristes ont tendance à soutenir cette idée dans l’ensemble, mais cet article s’y oppose et le débat est intéressant.
Version longue :
Calimaq publie un article que j’ai trouvé très intéressant sur la défense de la clause Non Commercial (NC) dans les licences Creative Commons. Précisions : à l’occasion d’une nouvelle version 4.0 des licences Creative Commons (CC), certains membres de la communauté CC ont (…)
Journal Un article sur la conception sécurisée des serveurs graphiques (X, Wayland)
Dans la lignée de mon journal sur le sandboxing dans Chrome et surtout le troll sur le modèle de sécurité de l'Apple Store, je pense que les lecteurs et lectrices de LinuxFR qui aiment les questions de conception sécurisée des applications seront intéressé-e-s par cet article de Linux Weekly News:
XDC2012: Graphics Stack Security
Martin Peres and Timothée Ravier's session on day one of XDC2012 looked at security in the graphics stack. They considered user expectations around security in (…)
Journal Un article sur le sandboxing de Chrome sous Linux
En ce moment, le principe de moindre privilège pour sécuriser les applications UNIX, c'est un peu mon dada. J'en ai parlé dans une dépêche sur Capsicum, qui est un modèle de sécurité très riche et très intéressant mais pas encore porté sous Linux (il est maintenant disponible dans FreeBSD par contre), une dépêche sur seccomp-filter, une autre technologie pour Linux beaucoup plus bas niveau mais (secrètement) reliée, et indirectement dans le troll sur le modèle de sécurité de (…)
Journal Declaration of Internet Freedom
Un appel, annoncé il y a quelques heures, qui définit un ensemble de libertés fondamentales sur internet : expression, accès, ouverture, innovation et vie privée. Il a déjà reçu des soutiens importants : l'EFF, Yochai Benkler, Cory Doctorow, Aaron Swartz, Neil Gaiman…
Techdirt a fait une jolie image :
En texte, la déclaration :
Declaration
We stand for a free and open Internet.
We support transparent and participatory processes for making Internet policy and the establishment of (…)
Sandboxing fin dans le noyau linux : la saga des filtres seccomp
Les développeurs de Google sont toujours à la recherche de solutions permettant d'améliorer la sécurité du navigateur web Google Chrome (ou son implémentation libre Chromium), ou de leur projet ChromeOS. Dans la dépêche à ce sujet, je vous avais raconté leur participation au projet Capsicum, qui apporte une gestion très fine des privilèges d'un processus, maintenant intégré dans FreeBSD.
Bien que les techniques mises en place par Capsicum soient pensées pour tous les systèmes inspirés d'UNIX, il n'y a pas grand espoir aujourd'hui qu'un port Linux soit accepté par les développeurs noyau ; Capsicum est un projet externe qu'il faudrait d'abord intégrer, ré-exprimer en terme des fonctionnalités existantes dans le noyau ; et les mainteneurs sont notoirement mécontents de la multiplication des solutions de sécurité (les Linux Security Modules en particulier) et ne verraient pas d'un bon œil l'apparition d'un nouveau candidat. Les développeurs Chromium utilisent sous Linux le primitif système de sandboxing seccomp
, bien qu'il soit beaucoup moins flexible que Capsicum et donc nettement plus pénible et difficile à utiliser.
Depuis 2009, les développeurs Chrome essaient d'étendre les capacités de seccomp
pour mieux répondre à leurs besoins. Les changements se sont révélés beaucoup plus difficiles à faire accepter que prévu : la situation a semblé bloquée à de nombreuses reprises et n'a pas évolué pendant de nombreux mois. Après plusieurs tentatives infructueuses, Will Drewry vient de proposer une nouvelle approche qui pourrait obtenir l'approbation des développeurs noyau ; mais rien n'est encore gagné…
Journal L'édition des commentaires sur LinuxFR, ou pas ?
Sommaire
Résumé de l'histoire passée
Je me suis rendu compte il y a un certain temps déjà que ma participation aux discussions sur LinuxFR serait beaucoup plus agréable s'il était possible d'éditer ses commentaires. Je suis très mauvais pour me relire mais maniaque sur la forme : quand je vois une faute ou maladresse (…)
Capsicum, une séparation fine des privilèges pour UNIX
Le projet Capsicum, lancé l'année dernière, tente d’adapter le modèle de sécurité par capacités (« capabilities ») aux systèmes UNIX. En deux mots, il s’agit de permettre aux applications de faire tourner certaines parties de leur code dans des « sandboxes » (bacs à sable) aux droits très restreints, gérés finement, avec la possibilité de recevoir ou de déléguer dynamiquement une partie de ces droits.
C’est une approche de la sécurité qui mise sur la flexibilité et l’intégration directe dans les applications (au contraire de politiques externes décidées par l’administrateur système, comme avec SELinux) pour respecter le Principle of Least Authority, qui recommande qu’un bout de programme donné fonctionne avec seulement les droits dont il a besoin pour accomplir sa tâche. Ainsi, les conséquences d’une faille sont réduites et les vecteurs d’attaque diminuent énormément. Par exemple, je ne veux pas que le logiciel qui lit mes fichiers PDF ait le droit de lire le contenu de mon répertoire personnel et d’envoyer des e-mails.
Capsicum introduit de nouveaux appels et objets système, qui demandent une (relativement petite) modification du noyau, ainsi qu’une bibliothèque logicielle en espace utilisateur pour utiliser ces nouveaux appels système. FreeBSD a déjà fait les modifications nécessaires, et les chercheurs ont pu facilement convertir plusieurs applications au modèle Capsicum : tcpdump
, dhclient
, gzip
et, avec l’aide d’un développeur Google, le navigateur Web chromium
.
Capsicum peut ainsi renforcer considérablement la sécurité des applications UNIX classiques, sans demander de les recoder entièrement. Reste à voir si les développeurs du monde du Libre seront convaincus par ces approches compartimentées, et prêts à les prendre en compte lors de la conception de leurs logiciels.
Journal Extraits d'un discours de Moglen sur la GPL3
Son discours est très intéressant, et très long (…)