Question:
Comparaison entre AppArmor et Selinux
Ali Ahmad
2013-01-20 18:30:46 UTC
view on stackexchange narkive permalink

J'étais en train de passer en revue plusieurs comparaisons différentes d'AppArmor et de SELinux, notamment:

De ces articles, je conclus qu'AppArmor est meilleur que SELinux basé sur AppArmor est beaucoup moins complexe et la courbe d'apprentissage beaucoup plus courte. Ainsi la majorité des comparaisons sont en faveur d'AppArmor mais comment dire qu'AppArmor est plus sécurisé que SELinux?

en relation: https://unix.stackexchange.com/questions/411853/core-difference-between-selinux-and-apparmor
Neuf réponses:
rook
2013-01-21 00:11:53 UTC
view on stackexchange narkive permalink

Ces systèmes de sécurité fournissent des outils pour isoler les applications les unes des autres ... et à leur tour isoler un attaquant du reste du système lorsqu'une application est compromise.

Les ensembles de règles SELinux sont incroyablement complexes mais avec cette complexité vous permet de mieux contrôler la façon dont les processus sont isolés. La génération de ces règles peut être automatisée. Une grève contre ce système de sécurité est qu'il est très difficile à vérifier indépendamment.

AppArmor (et SMACK) est très simple. Les profils peuvent être écrits à la main par des humains ou générés à l'aide de aa-logprof . AppArmor utilise un contrôle basé sur les chemins, ce qui rend le système plus transparent afin qu'il puisse être vérifié indépendamment.

«très difficile» et «très facile» me semble une réponse très subjective. En outre, je pense que quiconque est prêt à choisir entre AA et SELinux devrait se demander si les outils dont ils ont besoin ont une politique écrite dans l'un ou l'autre, comme point de départ. Lequel des deux prend en charge les espaces de noms, les groupes de contrôle et les conteneurs Docker?
@Steve DL SE Linux est si complexe qu'il est impossible même pour les développeurs de vérifier *
Je suis assez conscient de la complexité de SELinux, j'ai fait des recherches sur les outils MAC basés sur celui-ci. La seule étude comparative d'utilisabilité sur AA et SELinux est http://researchrepository.murdoch.edu.au/6177/1/empowering_end_users.pdf et elle n'est pas sans inconvénients (pas une population représentative des sysadms ou des CISO, et l'application de MAC aux programmes pour ce qu'il n'a jamais été prévu). Pour le contexte étudié, AA et SELinux sont insuffisants et cela n'est pas surprenant. Votre réponse ne répond pas à la question et il n'y a pas suffisamment de preuves factuelles pour y répondre correctement.
L'automatisation de la configuration avec SELinux est une mauvaise idée.http://symcbean.blogspot.co.uk/2016/11/selinux-sucks.html
Ce serait bien si vous expliquiez au moins les bases entre l'étiquetage de chemin et d'inode, car cela est important, étant donné que AppArmor est le premier et SELinux le second.
En lisant que SELinux est "incroyablement complexe" et "très difficile à vérifier indépendamment", cela me rappelle que SELinux a été créé par la NSA, donc cette complexité a peut-être été créée exprès pour introduire silencieusement des portes dérobées comme nous l'avons vu avec les fuites de Snowden.
docker fonctionne avec le type SELinux `container_t` dans RHEL et ses dérivés.Voici un exemple de la façon dont cela a empêché une vulnérabilité runc / docker: https://rhelblog.redhat.com/2017/01/13/selinux-mitigates-container-vulnerability/ Existe-t-il un ensemble de règles AppArmor comparable requis pour que les packages fonctionnentde la boîte?
@baptx: Même la NSA a abandonné SELinux - Prism n'était qu'un composant d'un système d'exploitation personnalisé.Mais la politique (tout le monde ici confond SELinux, le peu que la NSA a écrit, avec la politique, je n'ai vu que des politiques basées sur celle que Redhat continue de réécrire).
IBit
2013-12-25 04:54:13 UTC
view on stackexchange narkive permalink

le lien insanitybit est vers mon site Web. Je voudrais juste justifier mon opinion ici :)

Si vous regardez SELinux et Apparmor, ils sont à la fois forts et faibles de la même manière. SELinux est "plus fort" en ce sens qu'il peut obtenir un accès encore plus fin aux fichiers, mais qu'est-ce que cela gagne un attaquant en se trouvant dans un profil apparmor? Vous êtes déjà considérablement limité dans un profil Apparmor. Alors, gagnez-vous vraiment beaucoup plus avec SELinux?

Ce que vous gagnez avec SELinux (en particulier pour la création de politiques, bien plus que l'audit - bien que l'audit pour autoriser soit également pénible), c'est une complexité supplémentaire. Une grande partie.

Le chemin de moindre résistance dans un sandbox Linux, tel que SELinux ou Apparmor, est le noyau . SELinux ne fait rien de plus que Apparmor pour sécuriser le noyau.

Donc, si un attaquant veut emprunter la voie stupide consistant à résoudre des problèmes de conception dans Apparmor / SELinux, SELinux est potentiellement plus sûrs - mais cela suppose que les profils sont bien construits et, comme SELinux est si complexe, nous avons en fait vu des vulnérabilités introduites avec lui.

Si un attaquant est intelligent, il le fera. optez pour le noyau, en contournant les deux.

Ils sont donc tous les deux faibles de la même manière, tous deux forts de toutes les manières qui comptent, et l'un d'eux est BEAUCOUP plus simple.

Voila.

La métaphore du couteau à beurre ne fonctionne pas, cela devrait être évident.

Puisque vous pointez le noyau comme le "point faible", cela vaut peut-être la peine de mentionner GrSecurity.
Oui, j'ai beaucoup écrit sur Grsecurity sur mon site Web. Aucun système Linux visant la sécurité n'est complet sans lui, et personne ne devrait compter sur MAC sans d'abord s'attaquer aux faiblesses du noyau.
evanxsummers
2013-10-17 17:16:42 UTC
view on stackexchange narkive permalink

AppArmor est plus sécurisé grâce à sa simplicité qui facilite l'examen et la validation des politiques. Les erreurs sont moins susceptibles de faire, plus faciles à repérer, et une tentative de porte dérobée est plus difficile à dissimuler.

bryn1u
2016-10-25 17:29:53 UTC
view on stackexchange narkive permalink

SELinux est sûrement un outil de sécurité plus complet et ambitieux qu'AppArmor. SELinux est un vaste univers, il imprègne tout, il étiquette potentiellement chaque objet du système et élève conceptuellement le système à une infrastructure de sécurité plus sophistiquée, il vous permet de mettre en œuvre tous les principaux paradigmes de sécurité dans la théorie du contrôle d'accès; même

les organisations militaires et gouvernementales peuvent l'utiliser pour leurs besoins de sécurité stricts. Avec SELinux, il est possible d'implémenter MAC («Mandatory Access Control»), MLS («Multi-Level Security», avec Bell-La Modèles Padula et Biba), MCS («Multi-Category Security»), RBAC («Role Based Access Control»), TE («Type Enforcement»). De plus, SELinux est basé sur le principe de refus par défaut.

AppArmor, d'autre part, vous permet simplement de définir ce qu'une seule application peut et ne peut pas faire, selon le principe du moindre privilège mais sans l'implémentation de paradigmes de sécurité complets.

Tim X
2013-01-25 10:19:44 UTC
view on stackexchange narkive permalink

En général, vous ne pouvez pas dire qu'appArmor est meilleur que SELinux. En effet, beaucoup dépend de ce que vous sécurisez et de ce que vous protégez, ainsi que des compétences et préférences individuelles de la / des personne (s) responsable (s) de la maintenance du système.

SELinux a un contrôle plus fin . Dans certaines situations, cela le rendrait plus approprié que AppArmor. D'autre part, AppArmor est susceptible d'être suffisamment puissant pour une majorité d'utilisateurs Linux. De plus, beaucoup rapportent qu'il est plus facile à comprendre et à utiliser, ce qui signifie qu'il est moins probable que des erreurs de configuration provoquent des trous dangereux difficiles à trouver. D'un autre côté, faire en sorte que quelqu'un qui soit à l'aise et familiarisé avec SELinux utilise AppArmor pourrait facilement entraîner des erreurs de configuration simplement parce que ce n'est pas le système qu'il connaît.

Le fait est que vous devez évaluer en fonction de la situation spécifique et des compétences / préférences des personnes impliquées. Les deux sont de bons systèmes - c'est le choix du bon outil pour la bonne situation qui compte, pas celui qui est meilleur que l'autre.

sami
2016-11-03 21:17:57 UTC
view on stackexchange narkive permalink

D'après mon expérience personnelle avec SElinux, je dirais que cela n'a pas ajouté de complexité à GNU + Linux, la seule chose qu'il a fait et je considère que c'est un avantage est de nous apporter la complexité déjà inhérente au système d'exploitation, qu'il déroute beaucoup d'entre nous n'a rien à voir avec son paradigme de conception ou sa mise en œuvre. En comparaison avec AppArmor (AA), SElinux a un point de vue plus hollistique et abstrait sur ce que devrait être un système sécurisé où AA a un état d'esprit conteneur en pensant aux applications dans la mesure où dans les profils AA les chemins pour les ressources autorisées sont spécifiés ce qui n'est pas très abstrait. oui, il peut être plus simple d'écrire un profil pour chaque application mais vous perdez la vue hollistique du système. Maintenant, pratiquement SElinux fonctionne mieux avec Fedora et RHEL car il est pré-expédié tandis que AA fonctionne mieux sur Ubuntu et SUSE, ce qui signifie qu'il serait préférable d'apprendre à utiliser SElinux sur les anciennes distributions plutôt que de faire travailler AA sur eux et vice-versa. versa.

Craig
2013-07-31 12:37:55 UTC
view on stackexchange narkive permalink

Le but du contrôle d'accès obligatoire est de permettre une configuration fine. La simplicité n'a aucune importance à moins que les deux ne soient égaux sur tous les autres points. Parfois, la complexité est ce qu'il faut pour faire le travail.

En l'occurrence, SELinux a une bien meilleure granularité, est plus mature, plus largement déployé et à mon avis subjectif, mieux conçu. Votre conclusion s'apparente plus à la culture pop qu'à une véritable évaluation.

(Je conclus qu'un couteau à beurre est meilleur qu'une tronçonneuse, basé sur un couteau à beurre est beaucoup moins complexe et moins dangereux)

Un couteau à beurre vaut mieux qu'une tronçonneuse ... jusqu'à ce que vous ayez à couper un arbre!
Je ne suis pas du tout d'accord avec l'affirmation selon laquelle SELinux est mieux conçu.Il peut être plus difficile à rompre qu'AppArmor, mais la mise en œuvre et le maintien d'une stratégie efficace nécessitent beaucoup plus d'efforts que les autres approches du problème.Sa complexité ** épouvantable ** le rend peu pratique (sans doute même dangereux) pour la plupart des organisations à utiliser comme contrôle de sécurité sur les serveurs et les postes de travail (le seul endroit où je suis à l'aise avec son utilisation est sur des appareils bien pris en charge tels qu'Android - et deBien sûr, il n'y a jamais de malware sur Android?).
Gaius
2019-11-11 23:45:50 UTC
view on stackexchange narkive permalink

J'affirme avec audace qu'AppArmor est supérieur à SELinux dans tout environnement dans lequel NFS est utilisé, car SELinux ne peut pas le sécuriser. AppArmor est également plus facile à utiliser, mais il s'agit d'une distinction objective claire entre eux.

David Shepard
2020-07-07 19:34:03 UTC
view on stackexchange narkive permalink

Il ne sert à rien de comparer SELinux à AppArmor si vous ne pouvez pas rendre SELinux aussi utilisable pour un utilisateur typique que AppArmor.

La sécurité est plus simple / plus simple. Regardez votre application de médias sociaux typique sur un téléphone. Il demande une litanie d'autorisations, sinon il ne pourra tout simplement rien faire pour vous. Que font la plupart des utilisateurs? Ils accordent simplement à l'application les autorisations qu'elle demande, sans vraiment se soucier de l'utilisation de ces autorisations par l'application, simplement parce qu'ils ne veulent pas être gênés de ne pas pouvoir utiliser l'application. Les utilisateurs ne comprennent pas les implications des décisions de sécurité qu'ils prennent jusqu'à ce qu'il soit trop tard, et souvent c'est parce qu'il est difficile de conceptualiser la menace / le risque. Peu importe à quel point vos mécanismes de sécurité sont supérieurs si les utilisateurs ne les utilisent pas.

L'utilisateur est le maillon le plus faible de la chaîne, il l'a toujours été. Peu importe si la NSA préfère SELinux parce qu'elle l'a écrit. Ils allaient toujours l'utiliser. Les vendeurs souhaitant vendre Linux au gouvernement utiliseraient toujours l'outil le plus complexe. Le reste des utilisateurs d'ordinateurs n'utilisera un outil pour ajouter de la sécurité que s'ils peuvent comprendre comment le faire en environ cinq minutes, pas plus. C'est à quel point presque tous les utilisateurs se soucient de la sécurité et c'est pourquoi, après des décennies de preuve que les antivirus ne fonctionnent pas, c'est toujours une industrie de plusieurs milliards de dollars. C'est pourquoi, à moins d'être forcés de créer des mots de passe complexes et d'utiliser 2FA, les utilisateurs créeront leur mot de passe, "password1".

On ne savait pas comment cela répondait à la question jusqu'à ce que j'arrive à la dernière ligne.Je l'ai déplacé vers le haut pour plus de clarté.
Cependant, je ne suis pas sûr que vous ayez répondu plus que ce que la question dit déjà.


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...