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.
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)
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
# 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
# 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
# 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