En tant qu'administrateur disposant du profil de droits Audit Review (vérification d'audit), vous pouvez afficher le contenu de fichiers d'audit binaires à l'aide de la commande praudit.
# praudit options
La liste suivante répertorie quelques-unes des options. Vous pouvez combiner l'une de ces options avec l'option –l pour afficher chaque enregistrement sur une seule ligne.
Affiche les enregistrements d'audit dans un format court, un jeton par ligne.
Affiche les enregistrements d'audit au format brut, un jeton par ligne.
Affiche les enregistrements d'audit au format XML, un jeton par ligne. Cette option est utile pour un traitement supplémentaire.
Vous pouvez également utiliser les commandes auditreduce et praudit en envoyant la sortie praudit à partir de la commande auditreduce.
Exemple 5-7 Affichage des enregistrements d'audit dans un format courtDans cet exemple, les événements de connexion et de déconnexion extraits par la commande auditreduce s'affichent dans un format court.
# auditreduce -c lo | praudit -s header,69,2,AUE_screenlock,,mach1,2010-10-14 08:02:56.348 -07:00 subject,jdoe,root,staff,jdoe,staff,856,50036632,82 0 mach1 return,success,0 sequence,1298Exemple 5-8 Affichage des enregistrements d'audit dans un format brut
Dans cet exemple, les événements de connexion et de déconnexion extraits par la commande auditreduce s'affichent dans un format brut.
# auditreduce -c lo | praudit -r 21,69,2,6222,0x0000,10.132.136.45,1287070091,698391050 36,26700,0,10,26700,10,856,50036632,82 0 10.132.136.45 39,0,0 47,1298Exemple 5-9 Création d'enregistrements d'audit au format XML
Dans cet exemple, les enregistrements d'audit sont convertis au format XML.
# praudit -x 20100827183214.20100827215318.logins > 20100827.logins.xml
De même, vous pouvez afficher les enregistrements d'audit filtrés par la commande auditreduce au format XML.
# auditreduce -c lo | praudit -x <record version="2" event="screenlock - unlock" host="mach1" iso8601="2010-10-14 08:28:11.698 -07:00"> <subject audit-uid="jdoe" uid="root" gid="staff" ruid="jdoe rgid="staff" pid="856" sid="50036632" tid="82 0 mach1"/> <return errval="success" retval="0"/> <sequence seq-num="1298"/> </record>
Le contenu du fichier peut être exécuté par un script pour extraire les informations pertinentes.
Exemple 5-10 Rendre les enregistrements d'audit au format XML lisibles dans un navigateurVous pouvez reformater les enregistrements du fichier XML pour pouvoir les lire quel que soit le navigateur à l'aide de l'outil xsltproc. Cet outil applique des définitions de style au contenu du fichier. Pour placer le contenu reformaté dans un autre fichier, saisissez ce qui suit :
# auditreduce -c lo | praudit -x | xsltproc - > logins.html
Dans un navigateur, le contenu de logins.html s'affiche dans un format semblable à ce qui suit :
Audit Trail Data File: time: 2013-11-04 12:54:28.000 -08:00 Event: login - local time: 2013-11-04 12:54:28.418 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jdoe uid: jdoe gid: staff ruid: jdoe rgid: staff pid: 1534 sid: 3583012893 tid: 0 0 host RETURN errval: success retval: 0 Event: connect to RAD time: 2013-11-04 12:54:52.029 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jdoe uid: jdoe gid: staff ruid: jdoe rgid: staff pid: 1835 sid: 3583012893 tid: 0 0 host RETURN errval: success retval: 0 Event: role login time: 2013-11-08 08:42:52.286 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jdoe uid: root gid: root ruid: root rgid: root pid: 4265 sid: 3583012893 tid: 0 0 host RETURN errval: success retval: 0 Event: role logout time: 2013-11-08 08:43:37.125 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jdoe uid: root gid: root ruid: root rgid: root pid: 4265 sid: 3583012893 tid: 0 0 host RETURN errval: success retval: 0 Event: login - ssh time: 2013-12-23 12:24:37.292 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jsmith uid: jsmith gid: staff ruid: jsmith rgid: staff pid: 2002 sid: 39351741 tid: 14632 202240 host.example.com RETURN errval: success retval: 0 Event: role login time: 2013-12-23 12:25:07.345 -08:00 vers: 2 mod: fe host: host SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root pid: 2023 sid: 39351741 tid: 14632 202240 host.example.com RETURN errval: failure retval: Permission denied Event: su time: 2013-12-23 17:19:24.031 -08:00 vers: 2 mod: na host: host RETURN errval: success retval: 0 Event: su logout time: 2013-12-23 17:19:24.362 -08:00 vers: 2 mod: na host: host RETURN errval: success retval: 0 Event: login - ssh time: 2013-12-23 17:27:21.306 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jsmith uid: jsmith gid: staff ruid: jsmith rgid: staff pid: 2583 sid: 3401970889 tid: 13861 5632 host.example.com RETURN errval: success retval: 0 Event: role login time: 2013-12-23 17:27:28.361 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root pid: 2593 sid: 3401970889 tid: 13861 5632 host.example.com RETURN errval: success retval: 0 Event: role logout time: 2013-12-23 17:30:39.029 -08:00 vers: 2 mod: host: host SUBJECT audit-uid: jsmith uid: root gid: root ruid: root rgid: root pid: 2593 sid: 3401970889 tid: 13861 5632 host.example.com RETURN errval: success retval: 0 Other eventsExemple 5-11 Affichage des enregistrements pfedit uniquement
Vous pouvez utiliser des filtres pour extraire et visualiser uniquement les enregistrements dans la piste d'audit spécifique. Dans cet exemple, les enregistrements qui capturent l'utilisation de la commande pfedit sont filtrés. Supposons que le fichier de résumé soit 20130827183936.20130827232326.logins. L'utilisation de la commande pfedit génère l'événement AUE_admin_edit. Par conséquent, pour extraire des enregistrements pfedit, exécutez la commande suivante :
auditreduce -m AUE_admin_edit 20130827183936.20130827232326.logins | prauditExemple 5-12 Impression de la piste d'audit complète
A l'aide d'un tube sur la commande d'impression, la sortie de la piste d'audit complète est dirigée vers l'imprimante. Pour des raisons de sécurité, l'imprimante a un accès limité.
# auditreduce | praudit | lp -d example.protected.printerExemple 5-13 Affichage d'un fichier d'audit spécifique
Dans cet exemple, un fichier de connexion résumé est examiné dans une fenêtre de terminal.
# cd /var/audit/audit_summary/logins # praudit 20100827183936.20100827232326.logins | moreExemple 5-14 Traitement de la sortie praudit à l'aide d'un script
Si vous le souhaitez, vous pouvez traiter la sortie de la commande praudit en tant que lignes de texte. Cela peut être utile par exemple pour sélectionner des enregistrements que la commande auditreduce ne peut pas sélectionner. Un simple script shell suffit pour traiter la sortie de la commande praudit. L'exemple de script suivant place un enregistrement d'audit sur une seule ligne, recherche une chaîne de caractères spécifiée par l'utilisateur, puis renvoie le fichier d'audit dans sa forme d'origine.
#!/bin/sh # ## This script takes an argument of a user-specified string. # The sed command prefixes the header tokens with Control-A # The first tr command puts the audit tokens for one record # onto one line while preserving the line breaks as Control-A # praudit | sed -e '1,2d' -e '$s/^file.*$//' -e 's/^header/^aheader/' \\ | tr '\\012\\001' '\\002\\012' \\ | grep "$1" \\ Finds the user-specified string | tr '\\002' '\\012' Restores the original newline breaks
Notez que les caractères ^a dans le script signifie Ctrl+A, et non les deux caractères ^ et a. Le préfixe distingue le jeton header de la chaîne header qui pourrait s'afficher sous forme de texte.
Un message semblable à celui-ci indique que vous ne disposez pas de tous les privilèges nécessaires pour utiliser la commande praudit :
praudit: Can't assign 20090408164827.20090408171614.sys1.1 to stdin.
Exécutez la commande praudit dans un shell de profil. Vous devez vous connecter en tant qu'administrateur disposant du profil de droits Audit Review (vérification d'audit). Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .