====== Auditd ======
====== Description ======
Auditd est un outil qui permet de logger des événements intervenu sur l'OS.
====== Configuration ======
===== auditd.conf =====
Ensemble de variable qui permettent de configurer le daemon auditd.
Se trouve dans ''/etc/audit/auditd.conf''.
===== audit.rules =====
Régles qui seront chargées au démarrage du daemon auditd.
Se trouve dans ''/etc/audit/audit.rules''.
====== Commandes ======
===== ausyscall =====
Map un syscall en id ou un id en numéro de syscall :
$ ausyscall --exact x86_64 open
2
$ ausyscall i386 2
fork
$ ausyscall x86_64 2
open
===== auditctl =====
* Voir si auditd est enabled (status) :
$ auditctl -s
* Lister les règles chargées :
$ auditctl -l
* Recharger les régles à partir d'un fichier :
$ auditctl -R /etc/audit/audit.rules
* Supprimer l'ensemble des régles :
$ auditctl -D
* Log les syscall ''open'' pour l'utilisateur qui a l'id ''1000'' (on précise qu'on est sur du 64 bits car les sycall peuvent être différents) et aoute la clé gigix-open (utile pour filtrer dans les logs) :
$ auditctl -a exit,always -F arch=x86_64 -S open -F auid=1000 -k gigix-open
* Log les écritures (w = write / a = append / x = execution / r = read) pour le fichier ''/etc/passwd'' :
$ auditctl -a exit,always -F path=/etc/passwd -F perm=wa
* Log tout pour le répertoire ''/etc'' :
$ auditctl -w /etc
===== ausearch =====
Permet de rechercher dans les logs d'auditd.
* Cherche tout ce qui a été exécuté par le binaire ''cat'' dans la journée et donc la clé est ''gigix-open'' :
$ ausearch -i -ts today -x cat -k gigix-open
----
type=PROCTITLE msg=audit(18/08/2015 12:05:30.715:144502) : proctitle=cat
type=PATH msg=audit(18/08/2015 12:05:30.715:144502) : item=0 name=/etc/passwd inode=131360 dev=08:01 mode=file,644 ouid=root ogid=root rdev=00:00 nametype=NORMAL
type=CWD msg=audit(18/08/2015 12:05:30.715:144502) : cwd=/etc/apparmor.d
type=SYSCALL msg=audit(18/08/2015 12:05:30.715:144502) : arch=x86_64 syscall=open success=yes exit=3 a0=0x7ffe6bf27e40 a1=O_RDONLY a2=0x20000 a3=0x7ffe6bf26dc0 items=1 ppid=8792 pid=11211 auid=root uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=pts2 ses=2496 comm=cat exe=/bin/cat key=gigix-open
* Recherche dans la journée courante tout ce qui est en rapport avec l'uid ''33'' et crée un rapport sur les fichiers qu'il a ouvert :
$ ausearch --start today --loginuid 33 --raw | aureport -f --summary
* log des login :
$ ausearch -m LOGIN --start today -i -ts recent
----
type=LOGIN msg=audit(18/08/2015 13:09:01.324:145008) : pid=13252 uid=root old-auid=4294967295 auid=root old-ses=4294967295 ses=2528 res=yes
----
type=LOGIN msg=audit(18/08/2015 13:10:01.979:145016) : pid=13284 uid=root old-auid=4294967295 auid=root old-ses=4294967295 ses=2529 res=yes
* Rechercher un id auditd:
$ ausearch -a 95581
----
time->Thu Aug 13 23:09:01 2015
type=USER_END msg=audit(1439500141.278:95581): pid=1245 uid=0 auid=0 ses=768 msg='op=PAM:session_close acct="root" exe="/usr/sbin/cron" hostname=? addr=? terminal=cron res=success'
===== aureport =====
Affiche des rapports.
* Affiche les authentification en échec de la journée :
$ aureport --auth --failed -ts today
Authentication Report
============================================
# date time acct host term exe success event
============================================
1. 18/08/2015 00:09:55 ? ? ? /usr/sbin/saslauthd no 141386
2. 18/08/2015 00:09:55 ? ? ? /usr/sbin/saslauthd no 141387
3. 18/08/2015 00:09:56 ? ? ? /usr/sbin/saslauthd no 141388
4. 18/08/2015 00:09:56 ? ? ? /usr/sbin/saslauthd no 141389
5. 18/08/2015 00:09:56 ? ? ? /usr/sbin/saslauthd no 141390
6. 18/08/2015 00:09:56 ? ? ? /usr/sbin/saslauthd no 141391
7. 18/08/2015 00:09:56 ? ? ? /usr/sbin/saslauthd no 141392
8. 18/08/2015 00:09:57 ? ? ? /usr/sbin/saslauthd no 141393
9. 18/08/2015 00:09:57 ? ? ? /usr/sbin/saslauthd no 141394
10. 18/08/2015 00:10:16 shell pepsite.fr ssh /usr/sbin/sshd no 141407
11. 18/08/2015 00:23:52 linux pepsite.fr ssh /usr/sbin/sshd no 141452
12. 18/08/2015 00:37:26 unix pepsite.fr ssh /usr/sbin/sshd no 141503
13. 18/08/2015 00:46:06 data 123.151.22.194 ssh /usr/sbin/sshd no 141542
14. 18/08/2015 01:44:51 www-data 123.151.22.194 ssh /usr/sbin/sshd no 141735
15. 18/08/2015 02:44:10 http 123.151.22.194 ssh /usr/sbin/sshd no 141929
16. 18/08/2015 02:49:05 admin 93.99.96.49 ssh /usr/sbin/sshd no 141946
17. 18/08/2015 03:46:50 httpd 123.151.22.194 ssh /usr/sbin/sshd no 142448
18. 18/08/2015 04:48:28 nobody 123.151.22.194 ssh /usr/sbin/sshd no 142760
19. 18/08/2015 09:24:06 root 138.0.255.113 ssh /usr/sbin/sshd no 143767
20. 18/08/2015 09:29:22 admin 46.72.171.170 ssh /usr/sbin/sshd no 143783
* Affiche les événement en échec de la journée
root@ns325358:~# aureport -i -e --failed -ts today
Event Report
===================================
# date time event type auid success
===================================
1. 18/08/2015 00:09:55 141386 USER_AUTH unset no
2. 18/08/2015 00:09:55 141387 USER_AUTH unset no
3. 18/08/2015 00:09:56 141388 USER_AUTH unset no
4. 18/08/2015 00:09:56 141389 USER_AUTH unset no
5. 18/08/2015 00:09:56 141390 USER_AUTH unset no
6. 18/08/2015 00:09:56 141391 USER_AUTH unset no
7. 18/08/2015 00:09:56 141392 USER_AUTH unset no
8. 18/08/2015 00:09:57 141393 USER_AUTH unset no
9. 18/08/2015 00:09:57 141394 USER_AUTH unset no
10. 18/08/2015 00:10:16 141407 USER_AUTH unset no
11. 18/08/2015 00:23:52 141452 USER_AUTH unset no
12. 18/08/2015 00:37:26 141503 USER_AUTH unset no
13. 18/08/2015 00:46:06 141542 USER_AUTH unset no
14. 18/08/2015 01:44:51 141735 USER_AUTH unset no
15. 18/08/2015 02:44:10 141929 USER_AUTH unset no
16. 18/08/2015 02:49:05 141946 USER_AUTH unset no
17. 18/08/2015 03:46:50 142448 USER_AUTH unset no
18. 18/08/2015 04:48:28 142760 USER_AUTH unset no
19. 18/08/2015 09:24:06 143767 USER_AUTH unset no
20. 18/08/2015 09:29:22 143783 USER_AUTH unset no
21. 18/08/2015 12:05:28 144429 SYSCALL root no
22. 18/08/2015 12:05:28 144430 SYSCALL root no
23. 18/08/2015 12:05:28 144431 SYSCALL root no
24. 18/08/2015 12:05:28 144432 SYSCALL root no
* Voir les fichiers de log générés et les dates associées :
$ aureport -t
Log Time Range Report
=====================
/var/log/audit/audit.log.4: 13/08/2015 22:50:14.976 - 13/08/2015 23:04:25.972
/var/log/audit/audit.log.3: 13/08/2015 23:04:26.004 - 13/08/2015 23:37:11.445
/var/log/audit/audit.log.2: 13/08/2015 23:37:50.420 - 14/08/2015 19:58:25.190
/var/log/audit/audit.log.1: 14/08/2015 19:58:28.666 - 16/08/2015 13:18:13.688
/var/log/audit/audit.log: 16/08/2015 13:18:28.396 - 18/08/2015 13:07:08.766
===== autrace =====
Une sorte d'équivalent à **strace** :
$ autrace /bin/ls /tmp
===== aulastlog =====
Similaire à la commande ''lastlog'' mais utilise auditd.
===== aulast =====
Similaire à la commande ''last'' mais utilise auditd.