Ignorer les liens de navigation | |
Quitter l'aperu | |
Procédures de l'administrateur Oracle Solaris Trusted Extensions |
1. Concepts d'administration de Trusted Extensions
2. Outils d'administration de Trusted Extensions
3. Mise en route en tant qu'administrateur Trusted Extensions (tâches)
4. Exigences de sécurité sur un système Trusted Extensions (présentation)
5. Administration des exigences de sécurité dans Trusted Extensions (tâches)
6. Utilisateurs, droits et rôles dans Trusted Extensions (présentation)
7. Gestion des utilisateurs, des droits et des rôles dans Trusted Extensions (tâches)
8. Administration à distance dans Trusted Extensions (tâches)
9. Trusted Extensions et LDAP (présentation)
10. Gestion des zones dans Trusted Extensions (tâches)
11. Gestion et montage de fichiers dans Trusted Extensions (tâches)
12. Gestion de réseaux de confiance (présentation)
13. Gestion des réseaux dans Trusted Extensions (tâches)
14. Messagerie multiniveau dans Trusted Extensions (présentation)
15. Gestion de l'impression étiquetée (tâches)
16. Périphériques dans Trusted Extensions (présentation)
17. Gestion des périphériques pour Trusted Extensions (tâches)
18. Audit de Trusted Extensions (présentation)
19. Gestion des logiciels dans Trusted Extensions (tâches)
Ajout de logiciels à Trusted Extensions
Mécanismes de sécurité d'Oracle Solaris pour les logiciels
Évaluation de la sécurité d'un logiciel
Responsabilités du développeur lors de la création des programmes de confiance
Responsabilités de l'administrateur de sécurité pour les programmes de confiance
Processus autorisés dans le système de multifenêtrage
Gestion des logiciels dans Trusted Extensions (tâches)
Ajout d'un package logiciel dans Trusted Extensions
Installation d'un fichier d'archive Java dans Trusted Extensions
A. Guide de référence rapide pour l'administration de Trusted Extensions
Tout logiciel pouvant être ajouté à un système Oracle Solaris peut être ajouté à un système configuré avec Trusted Extensions. En outre, il est possible d'ajouter les programmes utilisant des API Trusted Extensions. L'ajout de logiciels à un système Trusted Extensions est similaire à l'ajout de logiciels à un système Oracle Solaris qui exécute des zones non globales.
Par exemple, des problèmes relatifs à l'empaquetage affectent les systèmes ayant installé des zones non globales. Les paramètres de package définissent les éléments suivants :
L'étendue de la zone du package : détermine le type de zone dans laquelle un package spécifique peut être installé.
La visibilité du package : détermine si un package doit être installé et être identique dans toutes les zones.
La limitation du package : détermine si un package doit uniquement être installé dans la zone actuelle.
Dans Trusted Extensions, les programmes sont généralement installés dans la zone globale pour être utilisés par les utilisateurs standard dans des zones étiquetées. Pour plus d'informations sur les packages des zones, reportez-vous au Chapitre 25, About Packages and Patches on a Solaris System With Zones Installed (Overview) du System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones. Reportez-vous également à la page de manuel pkgadd(1M).
Sur un site Trusted Extensions, l'administrateur système et l'administrateur de sécurité travaillent ensemble à l'installation des logiciels. L'administrateur de sécurité vérifie que les logiciels ajoutés respectent la stratégie de sécurité. Lorsqu'un logiciel requiert des privilèges ou des autorisations pour fonctionner, il affecte un profil de droits approprié aux utilisateurs du logiciel.
L'importation d'un logiciel à partir d'un support amovible nécessite une autorisation. Un compte avec l'autorisation Allouer un périphérique peut importer ou exporter des données à partir d'un support amovible. Les données peuvent inclure du code exécutable. Un utilisateur standard ne peut importer que des données sous une étiquette comprise dans son autorisation.
L'administrateur système est chargé d'ajouter les programmes approuvés par l'administrateur de sécurité.
Trusted Extensions utilise les mêmes mécanismes de sécurité que le SE Oracle Solaris. Il s'agit notamment des mécanismes suivants :
Autorisations : une autorisation peut être nécessaire pour permettre l'utilisation d'un programme. Pour plus d'informations sur les autorisations, reportez-vous à la section Oracle Solaris RBAC Elements and Basic Concepts du System Administration Guide: Security Services. Voir aussi les pages de manuel auth_attr(4) et getauthattr(3SECDB).
Privilèges : des privilèges peuvent être assignés à des programmes et des processus. Pour plus d'informations sur les privilèges, reportez-vous au Chapitre 8, Using Roles and Privileges (Overview) du System Administration Guide: Security Services. Reportez-vous également à la page de manuel privileges(5).
La commande ppriv fournit un utilitaire de débogage. Pour plus d'informations, reportez-vous à la page de manuel ppriv(1). Pour obtenir des instructions sur l'utilisation de cet utilitaire avec des programmes qui fonctionnent dans des zones non globales, reportez-vous à la section Using the ppriv Utility du System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones
Profils de droits : les profils de droits rassemblent les attributs de sécurité à affecter à des utilisateurs ou à des rôles en un point unique. Pour plus d'informations sur les profils de droits, reportez-vous à la section RBAC Rights Profiles du System Administration Guide: Security Services. Trusted Extensions ajoute des actions CDE aux fichiers exécutables auxquels des attributs de sécurité peuvent être assignés.
Bibliothèques de confiance : les bibliothèques partagées dynamiquement et utilisées par setuid, setgid et les programmes privilégiés peuvent uniquement être chargés à partir de répertoires de confiance. Comme dans le SE Oracle Solaris, la commande crle est utilisée pour ajouter les répertoires de bibliothèque partagés d'un programme exécuté avec des privilèges à la liste de répertoires de confiance. Pour plus d'informations, reportez-vous à la page de manuel crle(1).
Lorsque des privilèges ont été assignés à un logiciel ou lorsque ce dernier s'exécute à l'aide d'un autre ID d'utilisateur ou ID de groupe, le logiciel devient de confiance. Ce type de logiciel peut contourner certains aspects de la stratégie de sécurité de Trusted Extensions. Gardez à l'esprit qu'un logiciel peut être de confiance bien qu'il puisse ne pas être digne de confiance. Pour accorder des privilèges à un logiciel, l'administrateur de sécurité doit attendre qu'un examen minutieux ait révélé que le logiciel utilise les privilèges de manière fiable.
Les programmes d'un système de confiance se répartissent en trois catégories :
Les programmes qui n'exigent aucun attribut de sécurité : certains programmes s'exécutent à un seul niveau et ne nécessitent aucun privilège. Ces programmes peuvent être installés dans un répertoire public tel que /usr/local. Pour y accéder, assignez les programmes sous forme de commandes dans les profils de droits des utilisateurs et des rôles.
Les programmes qui s'exécutent en tant que root : certains programmes s'exécutent avec setuid 0. Un ID d'utilisateur effectif de 0 peut être affecté à de tels programmes dans un profil de droits. L'administrateur de sécurité affecte ensuite le profil à un rôle d'administration.
Astuce - Si l'application est capable d'utiliser les privilèges de manière fiable, affectez les privilèges nécessaires à l'application et n'exécutez pas le programme en tant que root.
Les programmes qui requièrent des privilèges : certains programmes peuvent nécessiter des privilèges pour des motifs qui ne sont pas évidents. Même si un programme ne semble pas exécuter de fonction contrevenant à la stratégie de sécurité du système, il peut être en train d'effectuer en interne une opération qui ne respecte pas la sécurité. Par exemple, le programme peut utiliser un fichier journal partagé, ou peut lire dans /dev/kmem. Pour les questions de sécurité, reportez-vous à la page de manuel mem(7D).
Parfois, ignorer une stratégie interne n'a pas d'incidence particulière sur le fonctionnement de l'application. Au contraire, il peut en résulter un bénéfice pour les utilisateurs.
Si votre organisation a accès au code source, vérifiez si vous pouvez supprimer les opérations pouvant outrepasser les stratégies de sécurité sans affecter les performances de l'application.
Bien que le développeur d'un programme puisse manipuler des jeux de privilèges dans le code source, si l'administrateur de sécurité n'attribue pas les privilèges requis au programme, le programme échoue. Le développeur et l'administrateur de sécurité doivent coopérer lors de la création des programmes de confiance.
Un développeur qui écrit un programme de confiance doit effectuer les opérations suivantes :
Comprendre où le programme requiert des privilèges pour pouvoir mener à bien sa mission.
Connaître et mettre en œuvre des techniques telles que la séparation des privilèges pour pouvoir utiliser les privilèges en toute sécurité dans les programmes.
Être conscient des implications en matière de sécurité lorsqu'il affecte des privilèges à un programme. Le programme doit respecter la stratégie de sécurité.
Compiler le programme en utilisant des bibliothèques partagées liées au programme à partir d'un répertoire de confiance.
Pour plus d'informations, reportez-vous au Developer’s Guide to Oracle Solaris Security. Pour voir des exemples de code pour Trusted Extensions, reportez-vous au Oracle Solaris Trusted Extensions Developer’s Guide .
L'administrateur de sécurité est responsable du test et de l'évaluation des nouveaux logiciels. Une fois le logiciel considéré comme digne de confiance, l'administrateur de sécurité configure des profils de droits et tout autre attribut relatif à la sécurité pour le programme.
Les responsabilités suivantes lui incombent alors :
S'assurer que le programmeur et le processus de distribution de programmes sont de confiance.
Déterminer les privilèges requis par le programme de l'une des manières suivantes :
En demandant au programmeur.
En recherchant les privilèges que le programme s'attend à utiliser dans le code source.
En recherchant dans le code source les autorisations que le programme exige de ses utilisateurs.
En utilisant les options de débogage de la commande ppriv afin de détecter l'utilisation de privilèges. Pour voir des exemples, reportez-vous à la page de manuel ppriv(1).
Examiner le code source pour s'assurer que son comportement est fiable par rapport aux privilèges dont le programme a besoin pour fonctionner.
Si ce n'est pas le cas et vous avez la possibilité de modifier le code source du programme, modifiez ce code. Un consultant en sécurité ou un développeur possédant des connaissances dans ce domaine peuvent s'en charger. Les modifications peuvent inclure la séparation des privilèges ou la recherche d'autorisations.
L'assignation de privilèges doit être effectuée manuellement. Un programme qui échoue en raison d'un manque de privilèges peut s'en voir assigner de nouveaux. L'administrateur de sécurité peut également décider d'assigner un ID d'utilisateur ou un ID de groupe pour rendre le privilège non nécessaire.