Ignorer les liens de navigation | |
Quitter l'aperu | |
Administration d'Oracle Solaris : services de sécurité Oracle Solaris 11 Information Library (Français) |
Partie I Présentation de la sécurité
1. Services de sécurité (présentation)
Partie II Sécurité du système, des fichiers et des périphériques
2. Gestion de la sécurité de la machine (présentation)
3. Contrôle de l'accès aux systèmes (tâches)
4. Service d'analyse antivirus (tâches)
5. Contrôle de l'accès aux périphériques (tâches)
6. Utilisation de l'outil de génération de rapports d'audit de base (tâches)
Outil de génération de rapports d'audit de base (présentation)
Considérations de sécurité BART
Utilisation de BART (liste des tâches)
Procédure de création d'un manifeste
Procédure de personnalisation d'un manifeste
Procédure de comparaison des manifestes pour le même système dans le temps
Procédure de comparaison de manifestes de différents systèmes
Procédure de personnalisation d'un rapport BART en spécifiant des attributs de fichiers
Procédure de personnalisation d'un rapport BART en utilisant un fichier de règles
Manifestes BART, fichiers de règles et rapports (référence)
Format de fichier manifeste BART
Format de fichier de règles BART
Attributs du fichier de règles
7. Contrôle de l'accès aux fichiers (tâches)
Partie III Rôles, profils de droits et privilèges
8. Utilisation des rôles et des privilèges (présentation)
9. Utilisation du contrôle d'accès basé sur les rôles (tâches)
10. Attributs de sécurité dans Oracle Solaris (référence)
Partie IV Services cryptographiques
11. Structure cryptographique (présentation)
12. Structure cryptographique (tâches)
13. Structure de gestion des clés
Partie V Services d'authentification et communication sécurisée
14. Authentification des services réseau (tâches)
17. Utilisation de Secure Shell (tâches)
19. Introduction au service Kerberos
20. Planification du service Kerberos
21. Configuration du service Kerberos (tâches)
22. Messages d'erreur et dépannage de Kerberos
23. Administration des principaux et des stratégies Kerberos (tâches)
24. Utilisation des applications Kerberos (tâches)
25. Service Kerberos (référence)
Partie VII Audit dans Oracle Solaris
Vous pouvez exécuter la commande bart en tant qu'utilisateur standard, superutilisateur ou utilisateur ayant endossé un rôle. Si vous exécutez la commande bart en tant qu'utilisateur standard, vous pouvez uniquement classifier et surveiller des fichiers pour lesquels vous disposez d'une autorisation d'accès, tels que des fichiers dans votre répertoire personnel. L'avantage de vous connecter en tant que superutilisateur lorsque vous exécutez la commande bart est que les manifestes que vous créez contiennent des informations sur les fichiers cachés et privés que vous souhaitez peut-être surveiller. Si vous avez besoin de classifier des informations sur des fichiers disposant d'autorisations restreintes, par exemple, le fichier /etc/passwd ou /etc/shadow, exécutez la commande bart en tant que superutilisateur. Pour plus d'informations sur l'utilisation du contrôle d'accès basé sur le rôle, reportez-vous à la section Contrôle d'accès basé sur les rôles (présentation).
L'exécution de la commande bart en tant que superutilisateur rend la sortie lisible par tout utilisateur. Cette sortie peut contenir des noms de fichiers destinés à être privés. Si vous vous connectez en tant que superutilisateur lorsque vous exécutez la commande bart, prenez les mesures appropriées pour protéger la sortie. Par exemple, utilisez les options générant des fichiers de sortie avec des autorisations restreintes.
Remarque - Les procédures et exemples de ce chapitre illustrent la commande bart exécutée par le superutilisateur. Sauf indication contraire, l'exécution de la commande bart en tant que superutilisateur est facultative.
|
Vous pouvez créer un manifeste d'un système immédiatement après une première installation du logiciel Oracle Solaris. Ce type de manifeste vous fournit une ligne de base pour comparer des changements sur le même système dans le temps. Vous pouvez aussi l'utiliser pour effectuer des comparaisons avec des manifestes d'autres systèmes. Par exemple, si vous prenez un instantané de chaque système de votre réseau, puis comparez chaque manifeste de test au manifeste de contrôle, vous pouvez rapidement déterminer ce que vous devez faire pour synchroniser le système de test avec la configuration de référence.
Avant de commencer
Pour créer un manifeste système, vous devez posséder le rôle root.
# bart create options > control-manifest
Spécifie le répertoire root pour le manifeste. Tous les chemins d'accès spécifiés par les règles sont interprétés par rapport à ce répertoire. Tous les chemins d'accès signalés dans le manifeste sont relatifs à ce répertoire.
Accepte une liste de fichiers individuels à classifier, soit sur la ligne de commande soit à lire dans l'entrée standard.
Nom du fichier de règles pour ce manifeste. Notez que –, lorsqu'il est utilisé avec l'option -r, lit le fichier de règles dans l'entrée standard.
Désactive les signatures de contenu de tous les fichiers standard dans la liste de fichiers. Cette option peut être utilisée pour améliorer les performances. Ou bien vous pouvez l'utiliser s'il est prévu que le contenu de la liste de fichiers change, comme dans le cas des fichiers journaux du système.
Choisissez un nom explicite pour le manifeste. Par exemple, utilisez le nom du système et la date de création du manifeste.
Exemple 6-1 Création d'un manifeste répertoriant des informations sur chaque fichier d'un système
Si vous exécutez la commande bart create sans aucune option, des informations relatives à tous les fichiers installés sur le système sont répertoriées. Utilisez ce type de manifeste comme ligne de base de base lorsque vous installez de nombreux systèmes à partir d'une image centrale. Vous pouvez également utiliser ce type de manifeste pour effectuer des comparaisons lorsque vous souhaitez vous assurer que les installations sont identiques.
Par exemple :
# bart create ! Version 1.1 ! HASH SHA256 ! Wednesday, September 07, 2011 (22:22:27) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode / D 1024 40755 user::rwx,group::r-x,mask:r-x,other:r-x 3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 0 0 . . . /zone D 512 40755 user::rwx group::r-x,mask:r-x,other:r-x 3f81e892 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 0 0 . . .
Chaque manifeste se compose d'un en-tête et d'entrées. Chaque entrée de fichier manifeste constitue une seule ligne, selon le type de fichier. Par exemple, pour chaque entrée de manifeste dans la sortie ci-dessus, le type F indique un fichier et le type D un répertoire. Sont également répertoriées des informations sur la taille, le contenu, l'ID utilisateur, l'ID de groupe et les autorisations. Les entrées de fichier dans la sortie sont triées par versions codées des noms de fichier de sorte à traiter correctement les caractères spéciaux. Toutes les entrées sont stockées dans l'ordre croissant par nom de fichier. Pour tous les noms de fichiers non standard, tels que ceux contenant des caractères de retour à la ligne ou de tabulation, les caractères non standard sont mis entre guillemets avant que les noms de fichiers ne soient triés.
Les lignes commençant par ! fournissent des métadonnées sur le manifeste. La ligne de version du manifeste indique la version de spécification du manifeste. La ligne de hachage indique le mécanisme de hachage qui a été utilisé. La ligne de date indique la date de création du manifeste. Reportez-vous à la page de manuel date(1). Certaines lignes sont ignorées par l'outil de comparaison de manifestes. Les lignes ignorées incluent des lignes vides, des lignes composées uniquement d'espaces blancs et des commentaires commençant par #.
Vous pouvez personnaliser un manifeste de l'une des façons suivantes :
En spécifiant une sous-arborescence
La création d'un manifeste pour une sous-arborescence sur un système est un moyen efficace de surveiller les modifications apportées à des fichiers spécifiques, au lieu de contrôler l'intégralité du contenu d'un vaste répertoire. Vous pouvez créer un manifeste de ligne de base pour une sous-arborescence spécifique sur votre système, puis créer périodiquement des manifestes de test de la même sous-arborescence. Utilisez la sous-commande bart compare pour comparer le manifeste de contrôle à celui de test. En utilisant cette option, vous pouvez surveiller efficacement les systèmes de fichiers importants pour déterminer si des fichiers ont été compromis par un intrus.
En spécifiant un nom de fichier
Etant donné que la création d'un manifeste classifiant l'ensemble du système requiert plus de temps et d'espace et est plus coûteuse, vous pouvez choisir d'utiliser cette option de la commande bart lorsque vous souhaitez uniquement répertorier des informations relatives à un ou plusieurs fichiers spécifiques sur un système.
En utilisant un fichier de règles
Vous utilisez un fichier de règles pour créer des manifestes personnalisés qui répertorient des informations sur des fichiers spécifiques et des sous-arborescences spécifiques sur un système donné. Vous pouvez également utiliser un fichier de règles pour contrôler des attributs de fichiers spécifiques. L'utilisation d'un fichier de règles pour créer et comparer des manifestes vous donne la possibilité de spécifier des attributs multiples pour plusieurs fichiers ou sous-arborescences. En revanche, à partir de la ligne de commande, vous ne pouvez indiquer qu'une définition d'attribut globale qui s'applique à tous les fichiers pour chaque manifeste que vous créez ou chaque rapport que vous générez.
Avant de commencer
Vous devez être dans le rôle root.
En spécifiant une sous-arborescence :
# bart create -R root-directory
En spécifiant un ou des noms de fichiers :
# bart create -I filename...
Par exemple :
# bart create -I /etc/system /etc/passwd /etc/shadow
En utilisant un fichier de règles :
# bart create -r rules-file
Utilisez cette procédure lorsque vous voulez surveiller les modifications au niveau des fichiers pour le même système dans le temps. Ce type de manifeste vous aide à localiser les fichiers corrompus ou inhabituels, détecter des violations de sécurité, ou résoudre des problèmes de performance sur un système.
Avant de commencer
Pour créer et comparer des manifestes qui incluent des objets publics, vous devez posséder le rôle root.
# bart create -R /etc > control-manifest
# bart create -R /etc > test-manifest
# bart compare options control-manifest test-manifest > bart-report
Nom du fichier de règles pour cette comparaison. L'utilisation de l'option -r avec – signifie que les directives sont lues à partir de l'entrée standard.
Permet à l'utilisateur de définir des directives IGNORE globales à partir de la ligne de commande.
Mode de programmation qui génère des sorties standard non localisées pour l'analyse programmatique.
Sortie de la commande bart create pour le système de contrôle.
Sortie de la commande bart create du système de test.
Exemple 6-2 Comparaison des manifestes pour le même système dans le temps
Cet exemple montre la surveillance des modifications qui ont eu lieu dans le répertoire /etc entre deux points dans le temps. Ce type de comparaison vous permet de déterminer rapidement si des fichiers importants sur le système ont été compromis.
Créez un manifeste de contrôle.
# bart create -R /etc > system1.control.090711 ! Version 1.1 ! HASH SHA256 ! Wednesday, September 07, 2011 (11:11:17) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /.cpr_config F 2236 100644 owner@:read_data/write_data/append_data/read_xattr/wr ite_xattr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchr onize:allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:all ow,everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow 4e271c59 0 0 3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 /.login F 1429 100644 owner@:read_data/write_data/append_data/read_xattr/write_x attr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchronize :allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow,ev eryone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow 4bf9d6d7 0 3 ff6251a473a53de68ce8b4036d0f569838cff107caf1dd9fd04701c48f09242e . . .
Créez un manifeste de test lorsque vous voulez surveiller les modifications apportées au répertoire /etc.
# bart create -R /etc > system1.test.101011 Version 1.1 ! HASH SHA256 ! Monday, October 10, 2011 (10:10:17) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /.cpr_config F 2236 100644 owner@:read_data/write_data/append_data/read_xattr/wr ite_xattr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchr onize:allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:all ow,everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow 4e271c59 0 0 3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 . . .
Comparez le manifeste de contrôle à celui de test.
# bart compare system1.control.090711 system1.test.101011 /security/audit_class mtime 4f272f59
La sortie ci-dessus indique que le temps de modification sur le fichier audit_class a changé depuis que le manifeste de contrôle est créé. Ce rapport peut être utilisé pour déterminer si la propriété, la date, le contenu ou tout autre attribut de fichier a été modifié. Le fait que ce type d'informations soit disponible facilement peut vous aider à repérer l'utilisateur susceptible d'avoir altéré le fichier et le moment auquel la modification a pu survenir.
Vous pouvez effectuer des comparaisons d'un système à l'autre, ce qui vous permet de déterminer rapidement s'il existe des différences au niveau des fichiers entre un système de référence et les autres systèmes. Par exemple, si vous avez installé une version spécifique du logiciel Oracle Solaris sur un système de référence, et que vous voulez savoir si des packages identiques sont installés sur d'autres systèmes, vous pouvez créer des manifestes pour ces systèmes, puis comparer les manifestes de test avec le manifeste de contrôle. Ce type de comparaison répertorie les écarts dans les contenus du fichier pour chaque système de test que vous comparez avec le système de contrôle.
Avant de commencer
Pour comparer les manifestes système, vous devez posséder le rôle root.
# bart create options > control-manifest
# bart create options > test1-manifest
Choisissez un nom distinct et significatif pour le manifeste de test.
Par exemple :
# cp control-manifest /net/test-server/bart/manifests
Si le système de test n'est pas un système monté via NFS, utilisez FTP ou un autre moyen fiable pour copier le manifeste de contrôle sur le système de test.
# bart compare control-manifest test1-manifest > test1.report
Utilisez les mêmes options bart pour chaque système de test.
Exemple 6-3 Comparaison de manifestes de différents systèmes avec le manifeste d'un système de contrôle
Cet exemple décrit la surveillance des modifications apportées au contenu du répertoire /usr/bin en comparant un manifeste de contrôle avec un manifeste de test d'un autre système.
Créez un manifeste de contrôle.
# bart create -R /usr/bin > control-manifest.090711 ! Version 1.1 ! HASH SHA256 ! Wednesday, September 07, 2011 (11:11:17) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0 2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 /7z F 509220 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribu tes/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:rea d_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:r ead_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4dadc48a 0 2 3ecd418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 ...
Créez un manifeste de test pour chaque système que vous souhaitez comparer avec le système de contrôle.
# bart create -R /usr/bin > system2-manifest.101011 ! Version 1.1 ! HASH SHA256 ! Monday, October 10, 2011 (10:10:22) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0 2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 ...
Lorsque vous voulez comparer des manifestes, copiez les manifestes dans le même emplacement.
# cp control-manifest /net/system2.central/bart/manifests
Comparez le manifeste de contrôle à celui de test.
# bart compare control-manifest system2.test > system2.report /su: gid control:3 test:1 /ypcat: mtime control:3fd72511 test:3fd9eb23
La sortie précédente indique que l'ID de groupe du fichier su dans le répertoire /usr/bin n'est pas le même que celui du système de contrôle. Cette information peut être utile pour déterminer si une version différente du logiciel a été installée sur le système de test ou si quelqu'un a éventuellement manipulé ce fichier.
Cette procédure est facultative et explique comment personnaliser un rapport BART en spécifiant des attributs de fichiers à partir de la ligne de commande. Si vous créez un manifeste de ligne de base qui répertorie des informations sur tous les fichiers ou sur des fichiers spécifiques de votre système, vous pouvez exécuter la commande bart compare en définissant des attributs différents, chaque fois que vous avez besoin de surveiller les modifications apportées à un répertoire, un sous-répertoire, un ou des fichiers en particulier. Vous pouvez exécuter différents types de comparaison pour les mêmes manifestes en spécifiant différents attributs de fichiers à partir de la ligne de commande.
Avant de commencer
Vous devez être dans le rôle root.
Préparez le manifeste de test exactement de la même façon que le manifeste de contrôle.
Par exemple :
# bart compare -i dirmtime,lnmtime,mtime control-manifest.121503 \ test-manifest.010504 > bart.report.010504
Notez qu'une virgule sépare chaque attribut que vous indiquez dans la syntaxe de la ligne de commande.
Cette procédure est également facultative et explique comment personnaliser un rapport BART à l'aide d'un fichier de règles comme entrée de la commande bart compare. En utilisant un fichier de règles, vous pouvez personnaliser un rapport BART, ce qui offre la flexibilité de spécifier plusieurs attributs pour plusieurs fichiers ou sous-arborescences. Vous pouvez exécuter différentes comparaisons pour les mêmes manifestes en utilisant différents fichiers de règles.
Avant de commencer
Vous devez être dans le rôle root.
# bart create -r rules-file > control-manifest
# bart create -r rules-file > test-manifest
# bart compare -r rules-file control-manifest test-manifest > bart.report
Exemple 6-4 Personnalisation d'un rapport BART en utilisant un fichier de règles
Le fichier de règles ci-après inclut les directives pour les commandes bart create et bart compare. Le fichier de règles indique à la commande bart create de répertorier des informations sur le contenu du répertoire /usr/bin. En outre, le fichier de règles indique à la commande bart compare de suivre uniquement les modifications de taille et de contenu dans le même répertoire.
# Check size and content changes in the /usr/bin directory. # This rules file only checks size and content changes. # See rules file example. IGNORE all CHECK size contents /usr/bin
Créez un manifeste de contrôle en utilisant le fichier de règles que vous avez créé.
# bart create -r bartrules.txt > usr_bin.control-manifest.121003
Créez un manifeste de test chaque fois que vous voulez surveiller les modifications apportées au répertoire /usr/bin.
# bart create -r bartrules.txt > usr_bin.test-manifest.121103
Comparez les manifestes en utilisant le même fichier de règles.
# bart compare -r bartrules.txt usr_bin.control-manifest \ usr_bin.test-manifest
Examinez la sortie de la commande bart compare.
/usr/bin/gunzip: add /usr/bin/ypcat: delete
Dans la sortie ci-dessus, la commande bart compare rapporte un écart dans le répertoire /usr/bin. Cette sortie indique que le fichier /usr/bin/ypcat a été supprimé, et le fichier /usr/bin/gunzip ajouté.