[6] AIDE – wykrywanie włamań

13 marca 2022 Wyłączono przez Adam [zicherka] Nogły

Zainstaluj i skonfiguruj Host Based IDS (Intrusion Detection System) [AIDE] (Advanced Intrusion Detection Environment).

[1] Zainstaluj AIDE.

[root@vlsr01 ~]# dnf install aide

[2] Skonfiguruj AIDE i zainicjuj bazę danych. Możliwe jest użycie AIDE z domyślną konfiguracją, ale jeśli chcesz dostosować ustawienia, zmień plik konfiguracyjny w następujący sposób. Zasady ustawiania są napisane w pobliżu 26-84 wierszy, odnieś się do nich.

[root@vlsr01 ~]# mcedit /etc/aide.conf
# linia 26: opis zestawu reguł
# These are the default rules.
#
#p:      permissions
#i:      inode:
#n:      number of links
#u:      user
#g:      group
#s:      size
#b:      block count
#m:      mtime
#a:      atime
#c:      ctime
#S:      check for growing size
#acl:           Access Control Lists
#selinux        SELinux security context
#xattrs:        Extended file attributes
#md5:    md5 checksum
#sha1:   sha1 checksum
#sha256:        sha256 checksum
#sha512:        sha512 checksum
#rmd160: rmd160 checksum
#tiger:  tiger checksum

# zainicjuj bazę danych
[root@vlsr01 ~]# aide --init
Start timestamp: 2022-03-13 13:01:39 +0100 (AIDE 0.16)
AIDE initialized database at /var/lib/aide/aide.db.new.gz
Number of entries:      40069
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
  MD5      : 5zPAofHCUXy2l4rke73nQw==
  SHA1     : SxbCTZ4c9pErsfet0hUqcWWXPdE=
  RMD160   : 5DlbZIxs8sG0H7y/0ExvNN3ERws=
  TIGER    : PJo1TFxDvOvwyzx9pS7hWgTmwaB/77qI
  SHA256   : 7+VNuITahxa9eIqZ0lVdcLOQALkOzw6+
             RzpXH5Tmyms=
  SHA512   : hqa5wwAWE2k7WthU6woHtNJwSslf6YQQ
             V/bjtA4ax5W18emQpR0+5MR83glbixBn
             BECB5eVqEvVyrvdgBAH0hw==
End timestamp: 2022-03-13 13:02:15 +0100 (run time: 0m 36s)

# skopiuj wygenerowaną bazę do głównej bazy danych
[root@vlsr01 ~]# cp -p /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

[3] Uruchom sprawdzanie.

[root@vlsr01 ~]# aide --check
Start timestamp: 2022-03-13 13:03:32 +0100 (AIDE 0.16)
# jest OK, nie ma różnic – wyświetla się: [Looks okay!!]
AIDE found NO differences between database and filesystem. Looks okay!!
Number of entries:      40069
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.gz
  MD5      : 5zPAofHCUXy2l4rke73nQw==
  SHA1     : SxbCTZ4c9pErsfet0hUqcWWXPdE=
  RMD160   : 5DlbZIxs8sG0H7y/0ExvNN3ERws=
  TIGER    : PJo1TFxDvOvwyzx9pS7hWgTmwaB/77qI
  SHA256   : 7+VNuITahxa9eIqZ0lVdcLOQALkOzw6+
             RzpXH5Tmyms=
  SHA512   : hqa5wwAWE2k7WthU6woHtNJwSslf6YQQ
             V/bjtA4ax5W18emQpR0+5MR83glbixBn
             BECB5eVqEvVyrvdgBAH0hw==
End timestamp: 2022-03-13 13:03:38 +0100 (run time: 0m 6s)

# spróbuj zmienić plik i wykonaj sprawdzenie ponownie
[root@vlsr01 ~]# chmod 640 /root/anaconda-ks.cfg
[root@vlsr01 ~]# aide --check
Start timestamp: 2022-03-13 13:05:12 +0100 (AIDE 0.16)
AIDE found differences between database and filesystem!!
Summary:
  Total number of entries:      40069
  Added entries:                0
  Removed entries:              0
  Changed entries:              1
---------------------------------------------------
Changed entries:
---------------------------------------------------
f   p..    ..A.. : /root/anaconda-ks.cfg
---------------------------------------------------
Detailed information about changes:
---------------------------------------------------
File: /root/anaconda-ks.cfg
  Perm     : -rw-------                       | -rw-r-----
  ACL      : A: user::rw-                     | A: user::rw-
             A: group::---                    | A: group::r--
             A: other::---                    | A: other::---
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.gz
  MD5      : 5zPAofHCUXy2l4rke73nQw==
  SHA1     : SxbCTZ4c9pErsfet0hUqcWWXPdE=
  RMD160   : 5DlbZIxs8sG0H7y/0ExvNN3ERws=
  TIGER    : PJo1TFxDvOvwyzx9pS7hWgTmwaB/77qI
  SHA256   : 7+VNuITahxa9eIqZ0lVdcLOQALkOzw6+
             RzpXH5Tmyms=
  SHA512   : hqa5wwAWE2k7WthU6woHtNJwSslf6YQQ
             V/bjtA4ax5W18emQpR0+5MR83glbixBn
             BECB5eVqEvVyrvdgBAH0hw==
End timestamp: 2022-03-13 13:05:18 +0100 (run time: 0m 6s)

[4] Nie ma problemu, nawet jeśli zostaną wykryte pewne różnice, zaktualizuj bazę danych w następujący sposób.

[root@vlsr01 ~]# aide --update
Start timestamp: 2022-03-13 13:07:45 +0100 (AIDE 0.16)
AIDE found differences between database and filesystem!!
New AIDE database written to /var/lib/aide/aide.db.new.gz
Summary:
  Total number of entries:      40069
  Added entries:                0
  Removed entries:              0
  Changed entries:              1
---------------------------------------------------
Changed entries:
---------------------------------------------------
f   p..    ..A.. : /root/anaconda-ks.cfg
---------------------------------------------------
Detailed information about changes:
---------------------------------------------------
File: /root/anaconda-ks.cfg
  Perm     : -rw-------                       | -rw-r-----
  ACL      : A: user::rw-                     | A: user::rw-
             A: group::---                    | A: group::r--
             A: other::---                    | A: other::---
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.gz
  MD5      : 5zPAofHCUXy2l4rke73nQw==
  SHA1     : SxbCTZ4c9pErsfet0hUqcWWXPdE=
  RMD160   : 5DlbZIxs8sG0H7y/0ExvNN3ERws=
  TIGER    : PJo1TFxDvOvwyzx9pS7hWgTmwaB/77qI
  SHA256   : 7+VNuITahxa9eIqZ0lVdcLOQALkOzw6+
             RzpXH5Tmyms=
  SHA512   : hqa5wwAWE2k7WthU6woHtNJwSslf6YQQ
             V/bjtA4ax5W18emQpR0+5MR83glbixBn
             BECB5eVqEvVyrvdgBAH0hw==
/var/lib/aide/aide.db.new.gz
  MD5      : vf0VLNb2nvJq/OzNoQxtmA==
  SHA1     : rA/uZhN/XpQt2O5nXTvLm1y469I=
  RMD160   : 3rtOmYuoyyqmJ3+lYQXYaK6ql8E=
  TIGER    : OaIdgJxV1ArOesOYwgsrX3ATyH8X+WhY
  SHA256   : EOaV/IOSFUljKJ4QEo80R+yhBxMzmiAA
             CmY648ZOAUA=
  SHA512   : 7jrgUYFmZLykw5flX4EsPbjH2slelJ0k
             bgLLP3pCqx3EP+IBxNFLnS52OxA3hx67
             +8+lTOxPuzvi/hRNKK0Raw==
End timestamp: 2022-03-13 13:07:52 +0100 (run time: 0m 7s)

# zaktualizuj bazę danych
[root@vlsr01 ~]# cp -p /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
cp: zamazać '/var/lib/aide/aide.db.gz'? t

[5] Dodaj zadanie do Crona, jeśli chcesz regularnie sprawdzać system za pomocą AIDE.

Plik dziennika [/var/log/aide/aide.log] jest aktualizowany za każdym razem, więc jeśli chcesz zapisywać pliki dziennika, musisz utworzyć skrypt powłoki lub wysłać wyniki pocztą elektroniczną lub w inny sposób.

# na przykład dodaj codzienne sprawdzanie w Crontab i wysyłaj wyniki e-mailem
[root@vlsr01 ~]# mcedit /etc/cron.d/aide
00 01 * * * root /usr/sbin/aide --update | mail -s 'Daily Check by AIDE' root