Gestion de l'audit dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Juillet 2014
 
 

Audit de toutes les commandes par les utilisateurs

Dans le cadre de leur stratégie de sécurité, certains sites nécessitent des enregistrements d'audit de toutes les commandes exécutées par les rôles d'administration et le compte root. Certains sites peuvent nécessiter des enregistrements d'audit pour toutes les commandes exécutées par tous les utilisateurs. En outre, les sites peuvent nécessiter que les arguments de commande et l'environnement soient enregistrés.

Avant de commencer

Pour présélectionner les classes d'audit et définir la stratégie d'audit, vous devez vous connecter en tant qu'administrateur disposant du profil de droits Audit Configuration (configuration d'audit). Pour affecter les indicateurs d'audit aux utilisateurs, rôles et profils de droits, vous devez prendre le rôle root.

  1. Affichez les informations sur l'événement au niveau des utilisateurs pour les classes lo et ex.

    La classe ex audite tous les appels des fonctions exec() et execve().

    La classe lo audite les connexions, déconnexions et blocages d'écran. La sortie suivante répertorie tous les événements des classes ex et lo.

    % auditconfig -lsevent | grep " lo "
    AUE_login                       6152 lo login - local
    AUE_logout                      6153 lo logout
    AUE_telnet                      6154 lo login - telnet
    AUE_rlogin                      6155 lo login - rlogin
    AUE_rshd                        6158 lo rsh access
    AUE_su                          6159 lo su
    AUE_rexecd                      6162 lo rexecd
    AUE_passwd                      6163 lo passwd
    AUE_rexd                        6164 lo rexd
    AUE_ftpd                        6165 lo ftp access
    AUE_ftpd_logout                 6171 lo ftp logout
    AUE_ssh                         6172 lo login - ssh
    AUE_role_login                  6173 lo role login
    AUE_newgrp_login                6212 lo newgrp login
    AUE_admin_authenticate          6213 lo admin login
    AUE_screenlock                  6221 lo screenlock - lock
    AUE_screenunlock                6222 lo screenlock - unlock
    AUE_zlogin                      6227 lo login - zlogin
    AUE_su_logout                   6228 lo su logout
    AUE_role_logout                 6229 lo role logout
    AUE_smbd_session                6244 lo smbd(1m) session setup
    AUE_smbd_logoff                 6245 lo smbd(1m) session logoff
    AUE_ClientConnect               9101 lo client connection to x server
    AUE_ClientDisconnect            9102 lo client disconn. from x server
    
    % auditconfig -lsevent | egrep " ex |,ex |ex,"
    AUE_EXECVE                        23 ex,ps execve(2)
  2. Auditez les classes lo et ex.
    • Pour auditer ces classes pour les rôles d'administration, modifiez les attributs de sécurité des rôles.

      Dans l'exemple suivant, root est un rôle. Le site a créé trois rôles, sysadm, auditadm et netadm. Tous les rôles sont soumis à un audit pour la réussite et l'échec d'événements dans les classes ex et lo.

      # rolemod -K audit_flags=lo,ex:no root
      
      # rolemod -K audit_flags=lo,ex:no sysadm
      
      # rolemod -K audit_flags=lo,ex:no auditadm
      
      # rolemod -K audit_flags=lo,ex:no netadm
      
    • Pour auditer ces classes pour tous les utilisateurs, définissez les indicateurs à l'échelle du système.
      # auditconfig -setflags lo,ex
      

      La sortie se présente de la manière suivante :

      header,129,2,AUE_EXECVE,,mach1,2010-10-14 12:17:12.616 -07:00
      path,/usr/bin/ls
      attribute,100555,root,bin,21,320271,18446744073709551615
      subject,jdoe,root,root,root,root,2486,50036632,82 0 mach1
      return,success,0
      
  3. Fournissez des informations supplémentaires à enregistrer sur l'utilisation des commandes.
    • Pour enregistrer les arguments de commande, ajoutez la stratégie argv.
      # auditconfig -setpolicy +argv

      Le jeton exec_args enregistre les arguments de commande :

      header,151,2,AUE_EXECVE,,mach1,2010-10-14 12:26:17.373 -07:00
      path,/usr/bin/ls
      attribute,100555,root,bin,21,320271,18446744073709551615
      exec_args
      ,2,ls,/etc/security
      subject,jdoe,root,root,root,root,2494,50036632,82 0 mach1
      return,success,0
    • Pour enregistrer l'environnement dans lequel la commande est exécutée, ajoutez la stratégie arge.
      # auditconfig -setpolicy +arge
      

      Le jeton exec_env enregistre l'environnement de commande :

      header,1460,2,AUE_EXECVE,,mach1,2010-10-14 12:29:39.679 -07:00
      path,/usr/bin/ls
      attribute,100555,root,bin,21,320271,18446744073709551615
      exec_args,2,ls,/etc/security
      exec_env
      ,49,MANPATH=/usr/share/man,USER=jdoe,GDM_KEYBOARD_LAYOUT=us,EDITOR=gedit,
      LANG=en_US.UTF-8,GDM_LANG=en_US.UTF-8,PS1=#,GDMSESSION=gnome,SESSIONTYPE=1,SHLVL=2,
      HOME=/home/jdoe,LOGNAME=jdoe,G_FILENAME_ENCODING=@locale,UTF-8,
      PRINTER=example-dbl,...,_=/usr/bin/ls
      subject,jdoe,root,root,root,root,2502,50036632,82 0 mach1
      return,success,0