Kako provjeriti integritet datoteke i direktorija koristeći "AIDE" u Linuxu


U našem mega vodiču za učvršćivanje i osiguranje CentOS 7, pod odjeljkom “interna zaštita sistema ”, jedan od korisnih sigurnosnih alata koje smo naveli za internu zaštitu sistema od virusa, rootkita, zlonamjernog softvera i otkrivanje neovlaštenih aktivnosti je AIDE.

AIDE (Napredno okruženje za otkrivanje upada) je mali, ali moćan, besplatni alat za otkrivanje upada otvorenog koda, koji koristi unaprijed definirana pravila za provjeru integriteta datoteka i direktorija u operativnim sistemima sličnim Unixu kao što je Linux. To je nezavisna statička binarna datoteka za pojednostavljene konfiguracije nadzora klijent/server.

Bogat je funkcijama: koristi konfiguracijske datoteke u obliku običnog teksta i bazu podataka što ga čini lakim za korištenje; podržava nekoliko algoritama sažetka poruka kao što su, ali ne ograničavajući se na md5, sha1, rmd160, tiger; podržava uobičajene atribute datoteka; također podržava moćne regularne izraze za selektivno uključivanje ili isključivanje datoteka i direktorija koje treba skenirati.

Takođe se može kompajlirati sa izuzetnom podrškom za Gzip kompresiju, Posix ACL, SELinux, XAttrs i atribute proširenog sistema datoteka.

Aide radi tako što kreira bazu podataka (koja je jednostavno snimak odabranih dijelova sistema datoteka), od pravila regularnih izraza definiranih u konfiguracijskim datotekama. Kada se ova baza podataka inicijalizira, možete provjeriti integritet sistemskih datoteka u odnosu na nju. Ovaj vodič će pokazati kako instalirati i koristiti aide u Linuxu.

Kako instalirati AIDE u Linux

Aide je upakovan u službena spremišta mainstream Linux distribucija, da biste ga instalirali, pokrenite naredbu za svoju distribuciju koristeći menadžer paketa.

apt install aide 	   [On Debian/Ubuntu]
yum install aide	   [On RHEL/CentOS] 	
dnf install aide	   [On Fedora 22+]
zypper install aide	   [On openSUSE]
emerge aide 	           [On Gentoo]

Nakon što ga instalirate, glavna konfiguracijska datoteka je /etc/aide.conf. Da vidite instaliranu verziju, kao i parametre vremena kompajliranja, pokrenite naredbu ispod na vašem terminalu:

aide -v
Sample Output
Aide 0.14

Compiled with the following options:

WITH_MMAP
WITH_POSIX_ACL
WITH_SELINUX
WITH_PRELINK
WITH_XATTR
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

Možete otvoriti konfiguraciju koristeći svoj omiljeni editor.

vi /etc/aide.conf

Ima direktive koje definiraju lokaciju baze podataka, lokaciju izvještaja, zadana pravila, direktorije/datoteke koje treba uključiti u bazu podataka.

Razumijevanje zadanih pravila pomoći

Koristeći gornja zadana pravila, možete definirati nova prilagođena pravila u datoteci aide.conf, na primjer.

PERMS = p+u+g+acl+selinux+xattrs

Pravilo PERMS se koristi samo za kontrolu pristupa, ono će otkriti sve promjene fajla ili direktorija na osnovu dozvola fajla/direktorija, korisnika, grupe, dozvola kontrole pristupa, SELinux konteksta i atributa datoteke.

Ovo će provjeriti samo sadržaj datoteke i vrstu datoteke.

CONTENT = sha256+ftype

Ovo je proširena verzija prethodnog pravila, provjerava prošireni sadržaj, vrstu datoteke i pristup.

CONTENT_EX = sha256+ftype+p+u+g+n+acl+selinux+xattrs

Pravilo SAMO DATA u nastavku će pomoći u otkrivanju bilo kakvih promjena u podacima unutar svih datoteka/direktorija.

DATAONLY =  p+n+u+g+s+acl+selinux+xattrs+sha256

Definiranje pravila za gledanje datoteka i direktorija

Nakon što definirate pravila, možete odrediti datoteku i direktorije za gledanje. Uzimajući u obzir gornje pravilo PERMS, ova definicija će provjeriti dozvole za sve datoteke u korijenskom direktoriju.

/root/\..*  PERMS

Ovo će provjeriti sve datoteke u /root direktoriju za bilo kakve promjene.

/root/   CONTENT_EX

Da biste lakše otkrili bilo kakve promjene u podacima unutar svih datoteka/direktorija pod /etc/, koristite ovo.

/etc/   DATAONLY 

Korištenje AIDE za provjeru integriteta datoteka i direktorija u Linuxu

Započnite konstruiranjem baze podataka na osnovu provjera koje će se izvršiti korištenjem oznake --init. Očekuje se da će to biti učinjeno prije nego što se vaš sistem poveže na mrežu.

Naredba u nastavku će kreirati bazu podataka koja sadrži sve datoteke koje ste odabrali u vašoj konfiguracijskoj datoteci.

aide --init

Zatim preimenujte bazu podataka u /var/lib/aide/aide.db.gz prije nego što nastavite, koristeći ovu naredbu.

mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

Preporučljivo je premjestiti bazu podataka na sigurnu lokaciju, moguće u mediju samo za čitanje ili na drugim strojevima, ali provjerite da li ste ažurirali konfiguracijsku datoteku da biste je čitali odatle.

Nakon kreiranja baze podataka, sada možete provjeriti integritet datoteka i direktorija pomoću oznake --check.

aide --check

On će pročitati snimak u bazi podataka i uporediti ga sa datotekama/direktorijumima koji su pronašli na vašem sistemskom disku. Ako pronađe promjene na mjestima koje možda ne očekujete, generiše izvještaj koji možete pregledati.

Pošto nisu napravljene nikakve promjene u sistemu datoteka, dobićete samo izlaz sličan onom iznad. Sada pokušajte da kreirate neke datoteke u sistemu datoteka, u oblastima definisanim u konfiguracionoj datoteci.

vi /etc/script.sh
touch all.txt

Zatim još jednom pokrenite provjeru koja bi trebala prijaviti gore dodane datoteke. Izlaz ove naredbe ovisi o dijelovima sistema datoteka koje ste konfigurirali za provjeru, može biti dugotrajno.

aide --check

Morate redovno pokretati pomoćne provjere, a u slučaju bilo kakvih promjena u već odabranim datotekama ili dodavanja novih definicija datoteka u konfiguracijski fajl, uvijek ažurirajte bazu podataka koristeći opciju --update:

aide --update

Nakon pokretanja ažuriranja baze podataka, da biste novu bazu podataka koristili za buduća skeniranja, uvijek je preimenujte u /var/lib/aide/aide.db.gz:

mv /var/lib/aide/aide.db.new.gz  /var/lib/aide/aide.db.gz

To je sve za sada! Ali obratite pažnju na ove važne tačke:

  • Jedna karakteristika većine sistema za otkrivanje upada, uključujući AIDE, je da neće pružiti rješenja za većinu sigurnosnih rupa u sistemu. Oni, međutim, pomažu u olakšavanju procesa odgovora na upad tako što pomažu administratorima sistema da ispitaju sve promjene sistemskih datoteka/direktorija. Stoga uvijek trebate biti na oprezu i stalno ažurirati svoje trenutne sigurnosne mjere.
  • Toplo se preporučuje da se novostvorena baza podataka, konfiguraciona datoteka i AIDE binarni fajl čuvaju na sigurnoj lokaciji kao što je medij samo za čitanje (moguće ako instalirate iz izvora).
  • Za dodatnu sigurnost, razmislite o potpisivanju konfiguracije i/ili baze podataka.

Za dodatne informacije i konfiguracije, pogledajte njegovu man stranicu ili pogledajte AIDE početnu stranicu: http://aide.sourceforge.net/