web-dev-qa-db-fra.com

Sécurité des clichés sous X11

Les mises à jour arrivant à 16.04 LTS, il existe un article de blog de Matthew Garrett, un contributeur bien connu au noyau Linux et développeur principal du système d'exploitation, qui dit:

... les clichés fonctionnent sans limitation et ont accès à presque tout le système

Si le but des clichés était d'imposer l'isolation des applications de l'ensemble du système, pourquoi sont-ils en mesure d'accéder au système et de s'exécuter sans contrainte? Un rapport de bogue doit-il être déposé? Des mesures seront-elles prises pour résoudre ce problème?

7
Safriddle

Cela concerne spécifiquement les captures qui utilisent X11. En d'autres termes, les instantanés ne sont pas en cours d'exécution sans limitation, mais si le confinement de l'alignement comprend l'accès à X, alors oui: il a accès à X. Il n'implique pas d'instantanés n'utilisant pas les interfaces unity7 ou x11. Le problème décrit dans cet article de blog est une limitation bien connue de X et l'une des raisons pour lesquelles des technologies alternatives sont développées (par exemple, Mir).

Gustavo Niemeyer a écrit un bon article de blog qui en parle . Je citerai ici pour la postérité et l'exhaustivité:

Les responsables de la sécurité remarqueront que X11 n’est en réalité pas un protocole sécurisé. Un certain nombre d’abus système sont possibles lorsque nous transmettons cette autorisation à une application. D’autres interfaces, telles que home, donneraient l’accès instantané à chaque fichier non caché du répertoire $ HOME de l’utilisateur (ceux qui ne commencent pas par un point), ce qui signifie qu’une application malveillante pourrait voler des informations personnelles et les envoyer par le réseau (en supposant il définit également une prise réseau).

Certains pourraient être surpris que ce soit le cas, mais il s'agit d'un malentendu sur le rôle des instantanés et de Snappy en tant que plate-forme logicielle. Lorsque vous installez un logiciel à partir de l’archive Ubuntu, il s’agit d’une déclaration de confiance des développeurs Ubuntu et Debian. Lorsque vous installez les fichiers binaires Chrome de Google ou MongoDB de Google à partir de leurs archives respectives, vous vous engagez à faire confiance aux développeurs (ils ont la racine sur votre système!). Snappy n’élimine pas le besoin de cette confiance, car une fois que vous avez accordé à un logiciel l’accès à vos fichiers personnels, caméra Web, microphone, etc., vous devez croire qu’il n’utilisera pas ces indemnités de manière malveillante.

Le but de Snappy est de créer un écosystème logiciel capable de contrôler exactement ce qui est autorisé et à qui, de manière claire et observable, en plus du même soin procédural que nous avons tous appris à apprécier dans le monde Linux. pas à la place. Empêcher les utilisateurs d’utiliser toutes les ressources pertinentes du système les contraindrait simplement à utiliser le même logiciel par rapport à des mécanismes moins sécurisés au lieu de résoudre le problème.

Et ce que nous avons aujourd'hui n'est que le début. Ces interfaces deviendront bientôt beaucoup plus riches et plus fines, y compris la sélection des ressources (par exemple, quel port série?), Et certaines d’entre elles disparaîtront complètement au profit de choix plus sûrs (Unity 8, par exemple).

8
Kyle

Le problème ne vient pas des instantanés, mais de X11, une technologie vieille de 30 ans conçue sans trop de considérations de sécurité.

Pour "résoudre le problème", vous devez simplement vous débarrasser de X11. Les systèmes qui en sont dépourvus, tels que les serveurs, peuvent désormais bénéficier de l’isolation des clichés. Le nouveau Mir qui remplacera xserver, plus tôt, espérons-le, est censé résoudre les problèmes de sécurité de X11.

Vous êtes plus que bienvenus pour lire le article de blog de Matthew Garrett afin de satisfaire votre curiosité. Ça dit:

Le problème ici est le système de fenêtrage X11. X n'a ​​pas de concept réel des différents niveaux de confiance des applications. Toute application peut s'inscrire pour recevoir des frappes au clavier de toute autre application. Toute application peut injecter de faux événements de clé dans le flux d'entrée. Une application qui est par ailleurs limitée par des stratégies de sécurité strictes peut simplement taper dans une autre fenêtre. Une application qui n’a accès à aucune de vos données privées peut attendre que votre session soit inactive, ouvrir un terminal non confiné, puis utiliser curl pour envoyer vos données à un site distant. Tant que le bureau Ubuntu utilise toujours X11, le format Snap vous offre très peu de sécurité significative.

2
mikewhatever