Před začátkem kurzu
AIDE je zkratka pro „Advanced Intrusion Detection Environment“ a je jedním z nejpopulárnějších systémů pro sledování změn v operačních systémech založených na Linuxu. AIDE se používá k ochraně proti malwaru, virům a detekci neoprávněných aktivit. Pro ověření integrity souboru a detekci vniknutí vytváří AIDE databázi informací o souborech a porovnává aktuální stav systému s touto databází. AIDE pomáhá zkrátit dobu vyšetřování incidentů tím, že se soustředí na soubory, které byly upraveny.
Vlastnosti AIDE:
- Podporuje různé atributy souborů, včetně: typu souboru, inode, uid, gid, oprávnění, počtu odkazů, mtime, ctime a atime.
- Podpora pro kompresi Gzip, SELinux, XAttrs, Posix ACL a atributy systému souborů.
- Podporuje různé algoritmy včetně md5, sha1, sha256, sha512, rmd160, crc32 atd.
- Zasílání upozornění e-mailem.
V tomto článku se podíváme na to, jak nainstalovat a používat AIDE pro detekci narušení na CentOS 8.
Předpoklady
- Server se systémem CentOS 8 s alespoň 2 GB paměti RAM.
- root přístup
Začínáme
Doporučuje se nejprve aktualizovat systém. Chcete-li to provést, spusťte následující příkaz.
dnf update -y
Po aktualizaci restartujte systém, aby se změny projevily.
Instalace AIDE
AIDE je k dispozici ve výchozím úložišti CentOS 8. Můžete jej snadno nainstalovat spuštěním následujícího příkazu:
dnf install aide -y
Po dokončení instalace můžete zobrazit verzi AIDE pomocí následujícího příkazu:
aide --version
Měli byste vidět následující:
Aide 0.16
Compiled with the following options:
WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"
Dostupné možnosti aide
lze zobrazit následovně:
aide --help
Vytvoření a inicializace databáze
První věc, kterou musíte po instalaci AIDE udělat, je inicializovat jej. Inicializace spočívá ve vytvoření databáze (snímku) všech souborů a adresářů na serveru.
Chcete-li inicializovat databázi, spusťte následující příkaz:
aide --init
Měli byste vidět následující:
Start timestamp: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE initialized database at /var/lib/aide/aide.db.new.gz
Number of entries: 49472
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
MD5 : 4N79P7hPE2uxJJ1o7na9sA==
SHA1 : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
RMD160 : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
TIGER : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
SHA256 : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
xWXT2iaEHgQ=
SHA512 : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
nDw6lgDNI/ls2esijukliQ==
End timestamp: 2020-01-16 03:03:44 -0500 (run time: 0m 25s)
Výše uvedený příkaz vytvoří novou databázi aide.db.new.gz
v katalogu /var/lib/aide
. Lze to vidět pomocí následujícího příkazu:
ls -l /var/lib/aide
Výsledek:
total 2800
-rw------- 1 root root 2863809 Jan 16 03:03 aide.db.new.gz
AIDE nebude používat tento nový databázový soubor, dokud nebude přejmenován na aide.db.gz
. To lze provést následovně:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
Doporučujeme tuto databázi pravidelně aktualizovat, abyste zajistili správné sledování změn.
Změnou parametru můžete změnit umístění databáze DBDIR
v souboru /etc/aide.conf
.
Probíhá kontrola
AIDE je nyní připraveno používat novou databázi. Spusťte první kontrolu AIDE bez provedení jakýchkoli změn:
aide --check
Dokončení tohoto příkazu bude nějakou dobu trvat v závislosti na velikosti vašeho systému souborů a velikosti paměti RAM na vašem serveru. Po dokončení skenování byste měli vidět následující:
Start timestamp: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!
Výše uvedený výstup říká, že všechny soubory a adresáře odpovídají databázi AIDE.
Testování AIDE
Ve výchozím nastavení AIDE nesleduje výchozí kořenový adresář Apache /var/www/html.
Pojďme nakonfigurovat AIDE tak, aby to viděl. Chcete-li to provést, musíte změnit soubor /etc/aide.conf
.
nano /etc/aide.conf
Přidejte výše uvedený řádek "/root/CONTENT_EX"
Následující:
/var/www/html/ CONTENT_EX
Dále vytvořte soubor aide.txt
v katalogu /var/www/html/
pomocí následujícího příkazu:
echo "Test AIDE" > /var/www/html/aide.txt
Nyní spusťte kontrolu AIDE a ujistěte se, že je vytvořený soubor detekován.
aide --check
Měli byste vidět následující:
Start timestamp: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE found differences between database and filesystem!!
Summary:
Total number of entries: 49475
Added entries: 1
Removed entries: 0
Changed entries: 0
---------------------------------------------------
Added entries:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt
Vidíme, že vytvořený soubor je detekován aide.txt
.
Po analýze zjištěných změn aktualizujte databázi AIDE.
aide --update
Po aktualizaci uvidíte následující:
Start timestamp: 2020-01-16 03:10:41 -0500 (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: 49475
Added entries: 1
Removed entries: 0
Changed entries: 0
---------------------------------------------------
Added entries:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt
Výše uvedený příkaz vytvoří novou databázi aide.db.new.gz
v katalogu
/var/lib/aide/
Můžete to vidět pomocí následujícího příkazu:
ls -l /var/lib/aide/
Výsledek:
total 5600
-rw------- 1 root root 2864012 Jan 16 03:09 aide.db.gz
-rw------- 1 root root 2864100 Jan 16 03:11 aide.db.new.gz
Nyní novou databázi znovu přejmenujte, aby AIDE používala novou databázi ke sledování dalších změn. Můžete jej přejmenovat následovně:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
Spusťte kontrolu znovu, abyste se ujistili, že AIDE používá novou databázi:
aide --check
Měli byste vidět následující:
Start timestamp: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!
Kontrolu automatizujeme
Je dobré každý den spustit kontrolu AIDE a zprávu poslat poštou. Tento proces lze automatizovat pomocí cronu.
nano /etc/crontab
Chcete-li spustit kontrolu AIDE každý den v 10:15, přidejte na konec souboru následující řádek:
15 10 * * * root /usr/sbin/aide --check
AIDE vás nyní upozorní e-mailem. Svou poštu můžete zkontrolovat pomocí následujícího příkazu:
tail -f /var/mail/root
Protokol AIDE lze zobrazit pomocí následujícího příkazu:
tail -f /var/log/aide/aide.log
Závěr
V tomto článku jste se naučili používat AIDE k detekci změn souborů a identifikaci neoprávněného přístupu k serveru. Pro další nastavení můžete upravit konfigurační soubor /etc/aide.conf. Z bezpečnostních důvodů se doporučuje ukládat databázi a konfigurační soubor na médium pouze pro čtení. Více informací naleznete v dokumentaci
Zdroj: www.habr.com