Questions Fréquemment Posées sur SELinux (FAQ)

Bonjour à tous ! Spécialement pour les étudiants du cours «Sécurité Linux» nous avons préparé une traduction de la FAQ officielle du projet SELinux. Nous pensons que cette traduction peut être utile non seulement aux étudiants, alors nous la partageons avec vous.

Questions Fréquemment Posées sur SELinux (FAQ)

Nous avons essayé de répondre à certaines des questions les plus fréquentes sur le projet SELinux. Actuellement, les questions sont réparties en deux catégories principales. Toutes les questions et réponses se trouvent sur la page FAQ.

Aperçu

Aperçu

  1. Qu'est-ce que Linux à sécurité renforcée ?
    Linux à sécurité renforcée (SELinux — Security-enhanced Linux) est une implémentation de référence de l'architecture de sécurité Flask pour un contrôle d'accès obligatoire flexible. Il a été créé pour démontrer l'utilité des mécanismes flexibles de gestion du contrôle d'accès et comment de tels mécanismes peuvent être ajoutés à un système d'exploitation. L'architecture Flask a ensuite été intégrée dans Linux et portées vers plusieurs autres systèmes, y compris le système d'exploitation Solaris, le système d'exploitation FreeBSD et le noyau Darwin, donnant lieu à un large éventail de travaux connexes. L'architecture Flask offre un support général pour l'application de nombreux types de politiques de contrôle d'accès obligatoire, y compris celles basées sur des concepts comme le Type Enforcement, le Contrôle d'Accès Basé sur les Rôles et la Sécurité Multi-niveaux.
  2. Qu'est-ce que Linux à sécurité renforcée apporte que le Linux standard ne peut pas ?
    Le noyau Linux à sécurité renforcée établit des politiques de contrôle d'accès obligatoire qui limitent les programmes utilisateurs et les serveurs systèmes au minimum de privilèges nécessaires pour accomplir leur tâche. En étant limité de cette manière, la capacité de ces programmes utilisateurs et démons systèmes de causer des dommages en cas de compromission (par exemple, en raison d'un débordement de tampon ou d'une mauvaise configuration) est réduite ou éliminée. Ce mécanisme de limitation fonctionne indépendamment des mécanismes de contrôle d'accès traditionnels de Linux. Il n'a pas de notion de superutilisateur «root» et ne partage pas les défauts bien connus des mécanismes de protection traditionnels de Linux (par exemple, la dépendance aux fichiers binaires setuid/setgid).
    La sécurité d'un système Linux non modifié dépend de la correction du noyau, de toutes les applications privilégiées et de chacune de leurs configurations. Un problème dans l'un de ces domaines peut conduire à la compromission de l'ensemble du système. À l'inverse, la sécurité d'un système modifié, basé sur un noyau Linux amélioré sur le plan de la sécurité, dépend avant tout de la solidité du noyau et de la configuration de sa politique de sécurité. Bien que des problèmes de correction ou de configuration des applications puissent permettre une compromission limitée de certains programmes utilisateurs et démons système, ils ne représentent pas une menace pour la sécurité d'autres programmes utilisateurs et démons système ou pour la sécurité globale du système.
  3. À quoi cela sert-il ?
    Les nouvelles fonctionnalités Linux renforcées en matière de sécurité sont conçues pour assurer la séparation des informations en fonction des exigences de confidentialité et d'intégrité. Elles visent à empêcher les processus de lecture des données et des programmes, la falsification des données et des programmes, la contournement des mécanismes de sécurité des applications, l'exécution de programmes non fiables ou l'interférence avec d'autres processus en violation de la politique de sécurité du système. Elles aident également à limiter les dommages potentiels qui peuvent être causés par des programmes malveillants ou incorrects. Elles doivent également être utiles pour permettre à un même système d'être utilisé par des utilisateurs ayant différents niveaux d'autorisation de sécurité pour accéder à différents types d'informations avec des exigences de sécurité variées, sans compromettre ces exigences.
  4. Comment puis-je obtenir une copie ?
    De nombreuses distributions Linux incluent le support de SELinux, déjà intégré par défaut ou en tant que paquet supplémentaire. Le code principal des utilisateurs de SELinux est disponible sur GitHub. Les utilisateurs finaux doivent généralement utiliser les paquets fournis par leur distribution.
  5. Qu'est-ce qui est inclus dans votre version ?
    La version NSA SELinux comprend le code de l'espace utilisateur de SELinux. Le support de SELinux est déjà inclus dans le noyau Linux 2.6 disponible sur kernel.org. Le code principal de l'espace utilisateur de SELinux se compose d'une bibliothèque pour manipuler la politique binaire (libsepol), d'un compilateur de politique (checkpolicy), d'une bibliothèque pour les applications de sécurité (libselinux), d'une bibliothèque pour les outils de gestion de politique (libsemanage) et de plusieurs utilitaires associés aux politiques (policycoreutils).
    En plus du noyau avec support SELinux et du code principal de l'espace utilisateur, vous aurez besoin d'une politique et de certains paquets d'espace utilisateur corrigés pour SELinux pour utiliser SELinux. La politique peut être obtenue à partir de projet de politique de référence SELinux.
  6. Puis-je installer un Linux à sécurité renforcée sur un système Linux existant ?
    Oui, vous pouvez installer uniquement des modifications de SELinux sur un système Linux existant ou vous pouvez installer une distribution Linux qui inclut déjà le support de SELinux. SELinux se compose d'un noyau Linux avec support SELinux, d'un ensemble de bibliothèques et d'utilitaires principaux, de certains paquets utilisateurs modifiés et d'une configuration de politique. Pour l'installer sur un système Linux existant sans support SELinux, vous devez être en mesure de compiler le logiciel, ainsi que d'autres paquets système nécessaires. Si votre distribution Linux inclut déjà le support SELinux, vous n'avez pas besoin de construire ou d'installer la version NSA SELinux.
  7. Quelle est la compatibilité de Linux avec sécurité renforcée par rapport à Linux non modifié ?
    Linux avec sécurité renforcée offre une compatibilité binaire avec les applications Linux existantes et avec les modules de noyau Linux existants, mais certains modules de noyau peuvent nécessiter des modifications pour interagir correctement avec SELinux. Ces deux catégories de compatibilité sont détaillées ci-dessous :
    • Compatibilité des applications
      SELinux garantit la compatibilité binaire avec les applications existantes. Nous avons étendu les structures de données du noyau en y intégrant de nouveaux attributs de sécurité, et ajouté de nouveaux appels API pour les applications fournissant la sécurité. Cependant, nous n'avons modifié aucune structure de données visible pour les applications et n'avons pas changé l'interface des appels système existants, de sorte que les applications existantes peuvent fonctionner sans modifications, si la politique de sécurité le permet.
    • Compatibilité des modules du noyau
      À l'origine, SELinux offrait une compatibilité source uniquement pour les modules du noyau existants ; il était nécessaire de recompiler ces modules avec des en-têtes de noyau modifiés pour prendre en compte les nouveaux champs de sécurité ajoutés aux structures de données du noyau. Étant donné que LSM et SELinux sont maintenant intégrés dans le noyau Linux 2.6, SELinux garantit désormais la compatibilité binaire avec les modules du noyau existants. Cependant, certains modules du noyau peuvent avoir des interactions problématiques avec SELinux sans modifications. Par exemple, si un module du noyau alloue et configure directement un objet noyau sans utiliser les fonctions d'initialisation standard, l'objet noyau peut manquer des informations de sécurité appropriées. Certains modules du noyau peuvent également manquer d'un contrôle de sécurité adéquat pour leurs opérations ; tout appel existant aux fonctions du noyau ou aux fonctions de permission déclenchera également des vérifications de permission SELinux, mais des contrôles plus détaillés ou supplémentaires peuvent être nécessaires pour garantir le respect des politiques MAC.
      Un Linux à sécurité améliorée ne doit pas poser de problèmes d'interaction avec les systèmes Linux standards, tant que toutes les opérations nécessaires sont autorisées par la configuration de la politique de sécurité.
  8. Quels sont les objectifs d'un exemple de configuration de politique de sécurité ?
    À un niveau élevé, l'objectif est de démontrer la flexibilité et la sécurité des mesures de contrôle d'accès et de fournir un système fonctionnel simple avec des modifications minimales des applications. À un niveau inférieur, la politique a plusieurs objectifs, décrits dans la documentation de la politique. Ces objectifs incluent la gestion de l'accès brut aux données, la protection de l'intégrité du noyau, des logiciels système, des informations de configuration système et des journaux système, la limitation des dommages potentiels causés par l'exploitation d'une vulnérabilité dans un processus nécessitant des privilèges, la protection des processus privilégiés contre l'exécution de code malveillant, la protection du rôle d'administrateur et du domaine contre l'accès sans authentification de l'utilisateur, la prévention de l'interférence des processus des utilisateurs ordinaires avec les processus système ou les processus administratifs, ainsi que la protection des utilisateurs et des administrateurs contre l'exploitation des vulnérabilités de leurs navigateurs par du code mobile malveillant.
  9. Pourquoi Linux a-t-il été choisi comme plateforme de base ?
    Linux a été sélectionné comme plateforme pour la première mise en œuvre de référence de ce travail en raison de son succès croissant et de son environnement de développement ouvert. Linux offre une excellente opportunité de démontrer que cette fonctionnalité peut être couronnée de succès dans un système d'exploitation principal tout en contribuant à la sécurité d'un système largement utilisé. La plateforme Linux offre également une excellente opportunité pour ce travail d'obtenir un aperçu aussi large que possible et pourrait servir de base pour des recherches supplémentaires sur la sécurité par d'autres passionnés.
  10. Pourquoi avez-vous réalisé ce travail ?
    Laboratoire national de recherche sur la cybersécurité L'Agence nationale de sécurité est responsable de la recherche et du développement de technologies avancées nécessaires pour que l'NSA puisse fournir des solutions, des produits et des services pour assurer la cybersécurité des infrastructures d'information critiques pour les intérêts de la sécurité nationale des États-Unis.
    La création d'un système d'exploitation sécurisé et viable reste un enjeu de recherche majeur. Notre objectif est de construire une architecture efficace qui assure le soutien nécessaire à la sécurité, en exécutant les programmes de manière largement transparente pour l'utilisateur et attrayante pour les fournisseurs. Nous croyons qu'une étape importante pour atteindre cet objectif est de démontrer comment les mécanismes de contrôle d'accès obligatoire peuvent être intégrés avec succès dans le système d'exploitation principal.
  11. Comment cela se rapporte-t-il aux recherches précédentes sur les systèmes d'exploitation de la NSA ?
    Des chercheurs de la National Security Agency's Information Assurance Research Laboratory, en collaboration avec Secure Computing Corporation (SCC), ont développé une architecture puissante et flexible de contrôle d'accès obligatoire basée sur le Type Enforcement, un mécanisme initialement conçu pour le système LOCK. La NSA et la SCC ont développé deux prototypes de cette architecture basés sur Mach : DTMach et DTOS (http://www.cs.utah.edu/flux/dtos/). La NSA et la SCC ont ensuite travaillé avec le groupe de recherche Flux de l'Université de l'Utah pour transférer l'architecture vers le système d'exploitation de recherche Fluke. Lors de ce transfert, l'architecture a été affinée pour mieux supporter les politiques de sécurité dynamiques. Cette architecture améliorée a été nommée Flask (http://www.cs.utah.edu/flux/flask/). La NSA a maintenant intégré l'architecture Flask dans le système d'exploitation Linux pour transmettre cette technologie à une plus large communauté de développeurs et d'utilisateurs.
  12. Le Linux renforcé en sécurité est-il un système d'exploitation fiable ?
    La phrase «Système d'exploitation de confiance» désigne généralement un système d'exploitation qui assure un soutien suffisant pour une protection multi-niveaux et une vérification de l'intégrité afin de répondre à un certain ensemble de normes gouvernementales. Linux avec sécurité renforcée intègre des concepts utiles de ces systèmes, mais se concentre sur le contrôle d'accès obligatoire. L'objectif initial du développement de Linux avec sécurité renforcée était de créer des fonctionnalités utiles offrant des avantages significatifs en matière de sécurité dans une large gamme d'environnements réels pour démontrer cette technologie. SELinux, à lui seul, n'est pas un système d'exploitation de confiance, mais il fournit une fonction de protection cruciale — le contrôle d'accès obligatoire — nécessaire pour un système d'exploitation de confiance. SELinux a été intégré dans des distributions Linux qui ont été évaluées selon le Profil de Protection de Sécurité Étiquetée. Des informations sur les produits certifiés et évalués peuvent être trouvées à l'adresse http://niap-ccevs.org/.
  13. Est-ce réellement sécurisé ?
    Le concept de système sécurisé englobe de nombreux attributs (par exemple, la sécurité physique, la sécurité du personnel, etc.), et Linux avec sécurité renforcée traite uniquement un ensemble très restreint de ces attributs (c'est-à-dire les éléments de contrôle d'accès obligatoire dans le système d'exploitation). En d'autres termes, un «système sécurisé» signifie que le système est suffisamment sécurisé pour protéger certaines informations dans le monde réel contre un adversaire réel, dont le propriétaire et/ou l'utilisateur des informations est prévenu. Linux avec sécurité renforcée est conçu uniquement pour démontrer les éléments de contrôle obligatoires dans un système d'exploitation moderne tel que Linux, et par conséquent, il est peu probable qu'il corresponde à une définition intéressante de système sécurisé. Nous croyons que la technologie démontrée dans Linux avec sécurité renforcée sera bénéfique pour les personnes qui créent des systèmes sécurisés.
  14. Qu'avez-vous fait pour améliorer les garanties ?
    L'objectif de ce projet était d'ajouter des éléments de contrôle d'accès obligatoire, avec des modifications minimales apportées à Linux. Cet objectif limitant ce qui peut être fait pour améliorer les garanties, il n'y a donc eu aucun travail visant à améliorer les garanties de Linux. D'un autre côté, les améliorations sont basées sur des travaux antérieurs de développement d'une architecture de sécurité à haute fiabilité, et la majorité de ces principes de conception ont été transférés à Linux avec une sécurité améliorée.
  15. Le CCEVS évaluera-t-il Linux avec sécurité améliorée ?
    Linux avec sécurité améliorée en soi n'est pas destiné à résoudre l'ensemble des problèmes de sécurité posés par le profil de protection. Bien qu'il soit possible d'évaluer uniquement sa fonctionnalité actuelle, nous pensons qu'une telle évaluation aurait une valeur limitée. Cependant, nous avons collaboré avec d'autres pour inclure cette technologie dans les distributions Linux qui ont été évaluées et celles en cours d'évaluation. Des informations sur les produits vérifiés et en cours de vérification peuvent être trouvées à http://niap-ccevs.org/.
  16. Avez-vous tenté de corriger des vulnérabilités ?
    Non, nous n'avons pas recherché ni trouvé de vulnérabilités au cours de notre travail. Nous avons seulement apporté le minimum nécessaire pour ajouter nos nouveaux mécanismes.
  17. Ce système est-il approuvé pour une utilisation gouvernementale ?
    Linux avec sécurité améliorée n'a pas d'approbation spéciale ou supplémentaire pour une utilisation gouvernementale par rapport à toute autre version de Linux. Linux avec sécurité améliorée n'a pas d'autorisation spéciale ou supplémentaire pour une utilisation gouvernementale par rapport à toute autre version de Linux.
  18. En quoi cela diffère-t-il des autres initiatives ?
    Linux avec sécurité améliorée a une architecture clairement définie pour un contrôle d'accès obligatoire flexible, qui a été expérimentalement vérifiée à l'aide de plusieurs systèmes prototypes (DTMach, DTOS, Flask). Des études détaillées ont été réalisées pour évaluer la capacité de l'architecture à prendre en charge un large éventail de politiques de sécurité et sont accessibles à http://www.cs.utah.edu/flux/dtos/ et http://www.cs.utah.edu/flux/flask/.
    L'architecture fournit un contrôle détaillé sur de nombreuses abstractions du noyau et des services qui ne sont pas régulés par d'autres systèmes. Certaines des caractéristiques distinctives du système Linux avec sécurité améliorée sont :
    • Séparation nette de la politique des droits d'application
    • Interfaces de politique clairement définies
    • Indépendance par rapport aux politiques spécifiques et aux langages de politique
    • Indépendance par rapport aux formats spécifiques et au contenu des balises de sécurité
    • Balises distinctes et contrôles pour les objets et services du noyau
    • Mise en cache des décisions d'accès pour l'efficacité
    • Support des changements de politique
    • Contrôle de l'initialisation du processus et de l'héritage et l'exécution des programmes
    • Gestion des systèmes de fichiers, des répertoires, des fichiers et des descripteurs de fichiers ouverts
    • Gestion des sockets, des messages et des interfaces réseau
    • Contrôle de l'utilisation des "Capacités"
  19. Quelles sont les restrictions de licence sur ce système ?
    Tout le code source trouvé sur le site https://www.nsa.gov, est distribué sous les mêmes conditions que les codes sources originaux. Par exemple, les corrections pour le noyau Linux et les correctifs pour de nombreux utilitaires existants, disponibles ici, sont publiées sous les conditions GNU General Public License (GPL).
  20. Y a-t-il un contrôle à l'exportation ?
    Pour Linux avec sécurité avancée, il n'y a pas d'éléments de contrôle d'exportation supplémentaires par rapport à toute autre version de Linux.
  21. L'NSA prévoit-elle de l'utiliser sur le sol américain ?
    Pour des raisons évidentes, la NSA ne commente pas l'utilisation opérationnelle.
  22. L'énoncé de garanties du 26 juillet 2002 de Secure Computing Corporation change-t-il la position de la NSA sur le fait que SELinux a été fourni sous GNU General Public License ?
    La position de la NSA n'a pas changé. La NSA considère toujours que les dispositions et conditions de la GNU General Public License régissent l'utilisation, la copie, la distribution et la modification de SELinux. Voir le communiqué de presse de la NSA du 2 janvier 2001.
  23. La NSA soutient-elle les logiciels open source ?
    Les initiatives de la NSA en matière de sécurité des logiciels concernent à la fois les logiciels propriétaires et les logiciels open source. Nous avons utilisé avec succès des modèles à la fois propriétaires et ouverts dans nos recherches. Le travail de la NSA pour améliorer la sécurité des logiciels est motivé par un simple principe : utiliser nos ressources le plus efficacement possible pour offrir à nos clients les meilleures options de sécurité sur les produits les plus couramment utilisés. L'objectif du programme de recherche de la NSA est de développer des avancées technologiques à partager avec la communauté des développeurs via divers mécanismes de transfert. La NSA ne soutient ni ne promeut un produit logiciel ou un modèle commercial en particulier. Au contraire, elle favorise l'amélioration de la sécurité.
  24. La NSA prend-elle en charge Linux ?
    Comme mentionné précédemment, la NSA ne soutient ni ne promeut un produit ou une plateforme logicielle en particulier ; elle favorise seulement l'amélioration de la sécurité. L'architecture Flask, démontrée dans l'implémentation de référence de SELinux, a été portée sur plusieurs autres systèmes d'exploitation, y compris Solaris, FreeBSD et Darwin, et a été intégrée dans l'hyperviseur Xen pour des applications comme X Window System, GConf, D-BUS et PostgreSQL. Les concepts de l'architecture Flask sont largement applicables à un large éventail de systèmes et d'environnements.

Collaboration

  1. Comment prévoyons-nous d'interagir avec la communauté Linux ?
    Nous avons un ensemble de pages web sur NSA.gov, qui servira de principal moyen de publication d'informations sur Linux avec une sécurité améliorée. Si vous êtes intéressé par Linux avec une sécurité améliorée, nous vous recommandons de rejoindre la liste de diffusion des développeurs, de consulter le code source et de fournir vos retours (ou votre code). Pour rejoindre la liste de diffusion des développeurs, consultez. La page de la liste de diffusion des développeurs SELinux.
  2. Qui peut aider ?
    SELinux est désormais soutenu et développé par la communauté des développeurs de logiciels open source pour Linux.
  3. La NSA finance-t-elle des travaux ultérieurs ?
    Actuellement, la NSA ne considère pas de propositions pour un travail futur.
  4. Quel type de support est disponible ?
    Nous prévoyons de traiter les questions via la liste de diffusion selinux@tycho.nsa.gov, mais nous ne pourrons pas répondre à toutes les questions concernant un site spécifique.
  5. Qui a aidé ? Que ont-ils fait ?
    Un prototype Linux amélioré en matière de sécurité a été développé par la NSA en collaboration avec des partenaires de recherche de NAI Labs, Secure Computing Corporation (SCC) et MITER Corporation. Après la publication initiale publique, de nombreux autres matériels ont suivi. Voir la liste des participants.
  6. Comment puis-je en savoir plus ?
    Nous vous recommandons de visiter nos pages web, de lire la documentation et les travaux de recherche passés, ainsi que de participer à notre liste de diffusion selinux@vger.kernel.org

Considérez-vous la traduction utile ? Écrivez vos commentaires !

Source : habr.com

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster