Cum să verificați integritatea fișierului și directorului folosind „AIDE” în Linux


În ghidul nostru mega pentru întărirea și securizarea CentOS 7, în secțiunea „protejați sistemul intern”, unul dintre instrumentele de securitate utile pe care le-am enumerat pentru protecția sistemului intern împotriva virușilor, rootkit-urilor, malware și detectarea neautorizată. activități este AIDE.

AIDE (Advanced Intrusion Detection Environment) este un instrument mic, dar puternic, gratuit, open source de detectare a intruziunilor, care folosește reguli predefinite pentru a verifica integritatea fișierelor și a directoarelor în sistemele de operare asemănătoare Unix precum Linux. Este un binar static independent pentru configurații simplificate de monitorizare client/server.

Este bogat în funcții: utilizează fișiere de configurare text simplu și baza de date, ceea ce face ușor de utilizat; acceptă mai mulți algoritmi de rezumare a mesajelor, cum ar fi, dar fără a se limita la, md5, sha1, rmd160, tiger; acceptă atributele comune ale fișierului; acceptă, de asemenea, expresii regulate puternice pentru a include sau exclude în mod selectiv fișierele și directoarele care urmează să fie scanate.

De asemenea, poate fi compilat cu suport excepțional pentru compresia Gzip, Posix ACL, SELinux, XAttrs și atributele sistemului de fișiere extins.

Aide lucrează prin crearea unei baze de date (care este pur și simplu un instantaneu al părților selectate ale sistemului de fișiere), din regulile de expresie regulată definite în fișierul (fișierele) de configurare. Odată inițializată această bază de date, puteți verifica integritatea fișierelor de sistem față de ea. Acest ghid va arăta cum să instalați și să utilizați ajutorul în Linux.

Cum se instalează AIDE în Linux

Aide este ambalat în depozitele oficiale ale distribuțiilor Linux principale, pentru a-l instala, rulați comanda pentru distribuția dvs. folosind un manager de pachete.

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]

După instalarea acestuia, fișierul principal de configurare este /etc/aide.conf. Pentru a vedea versiunea instalată, precum și parametrii de timp de compilare, rulați comanda de mai jos pe terminalul dvs.:

aide -v
Ieșire eșantion
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"

Puteți deschide configurația folosind editorul preferat.

vi /etc/aide.conf

Are directive care definesc locația bazei de date, locația raportului, regulile implicite, directoarele/fișierele care vor fi incluse în baza de date.

Înțelegerea regulilor implicite de asistență

Folosind regulile implicite de mai sus, puteți defini noi reguli personalizate în fișierul aide.conf, de exemplu.

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

Regula PERMS este utilizată numai pentru controlul accesului, va detecta orice modificări ale fișierelor sau directoarelor pe baza permisiunilor de fișier/director, utilizator, grup, permisiuni de control acces, context SELinux și atribute ale fișierului.

Aceasta va verifica numai conținutul și tipul fișierului.

CONTENT = sha256+ftype

Aceasta este o versiune extinsă a regulii anterioare, verifică conținutul extins, tipul fișierului și accesul.

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

Regula DATAONLY de mai jos va ajuta la detectarea oricăror modificări ale datelor din interiorul tuturor fișierelor/directoarelor.

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

Definirea regulilor de vizionare a fișierelor și directoarelor

Odată ce ați definit regulile, puteți specifica fișierul și directoarele de urmărit. Având în vedere regula PERMS de mai sus, această definiție va verifica permisiunile pentru toate fișierele din directorul rădăcină.

/root/\..*  PERMS

Aceasta va verifica toate fișierele din directorul /root pentru orice modificări.

/root/   CONTENT_EX

Pentru a vă ajuta să detectați orice modificări ale datelor din toate fișierele/directoarele din /etc/, utilizați aceasta.

/etc/   DATAONLY 

Utilizarea AIDE pentru a verifica integritatea fișierelor și a directorului în Linux

Începeți prin a construi o bază de date în funcție de verificările care vor fi efectuate folosind indicatorul --init. Acest lucru este de așteptat să se facă înainte ca sistemul dumneavoastră să fie conectat la o rețea.

Comanda de mai jos va crea o bază de date care conține toate fișierele pe care le-ați selectat în fișierul de configurare.

aide --init

Apoi redenumiți baza de date în /var/lib/aide/aide.db.gz înainte de a continua, folosind această comandă.

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

Este recomandat să mutați baza de date într-o locație sigură, eventual într-un mediu de citire doar sau pe alte mașini, dar asigurați-vă că actualizați fișierul de configurare pentru a-l citi de acolo.

După ce baza de date este creată, acum puteți verifica integritatea fișierelor și directoarelor folosind flag-ul --check.

aide --check

Acesta va citi instantaneul din baza de date și îl va compara cu fișierele/directoarele găsite pe discul de sistem. Dacă găsește modificări în locuri la care s-ar putea să nu vă așteptați, generează un raport pe care apoi îl puteți examina.

Deoarece nu s-au făcut modificări sistemului de fișiere, veți obține doar o ieșire similară cu cea de mai sus. Acum încercați să creați niște fișiere în sistemul de fișiere, în zonele definite în fișierul de configurare.

vi /etc/script.sh
touch all.txt

Apoi mai executați o verificare, care ar trebui să raporteze fișierele adăugate mai sus. Ieșirea acestei comenzi depinde de părțile sistemului de fișiere pe care le-ați configurat pentru verificare, poate fi mult timp suplimentar.

aide --check

Trebuie să rulați în mod regulat verificări auxiliare și, în cazul oricăror modificări la fișierele deja selectate sau adăugarea de noi definiții de fișiere în fișierul de configurare, actualizați întotdeauna baza de date utilizând opțiunea --update:

aide --update

După rularea unei actualizări a bazei de date, pentru a utiliza noua bază de date pentru scanări viitoare, redenumiți-o întotdeauna în /var/lib/aide/aide.db.gz:

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

Asta este tot pentru acum! Dar țineți cont de aceste puncte importante:

  • O caracteristică a majorității sistemelor de detectare a intruziunilor, inclusiv AIDE, este că acestea nu vor oferi soluții la majoritatea buclelor de securitate dintr-un sistem. Cu toate acestea, ele ajută la ușurarea procesului de răspuns la intruziune, ajutând administratorii de sistem să examineze orice modificări aduse fișierelor/directoarelor de sistem. Prin urmare, ar trebui să fiți mereu vigilenți și să continuați să vă actualizați măsurile de securitate actuale.
  • Este foarte recomandat să păstrați baza de date nou creată, fișierul de configurare și binarul AIDE într-o locație sigură, cum ar fi mediile de doar citire (posibil dacă instalați din sursă).
  • Pentru securitate suplimentară, luați în considerare semnarea configurației și/sau a bazei de date.

Pentru informații și configurații suplimentare, consultați pagina sa de manual sau consultați pagina de pornire AIDE: http://aide.sourceforge.net/