Installation und Verwendung des AIDE-System-Intrusion-Detection-Tools für die Linux-Sicherheit

1. Einführung in das AIDE-System-Intrusion-Detection-Tool

  AIDE, der vollständige Name von Advanced Intrusion Detection Environment, ist ein Tool zur Erkennung von Eindringlingen, das hauptsächlich zur Erkennung der Dateiintegrität verwendet wird. Es ist in der Lage, eine Datenbank mit bestimmten Dateien zu erstellen und verwendet aide.conf als Konfigurationsdatei. Die AIDE-Datenbank kann verschiedene Attribute von Dateien speichern, einschließlich Berechtigungen, Indexknoten-Seriennummern, Benutzer, zu denen sie gehören, Benutzergruppen, zu denen sie gehören, Dateigröße, letzte Änderungszeit, Erstellungszeit, letzte Zugriffszeit, vergrößerte Größe, Anzahl von Anschlüsse usw. Darüber hinaus unterstützt AIDE auch verschiedene Algorithmen wie sha1, md5, rmd160, Tiger usw., um für jede Datei einen Prüfcode oder eine Hash-Nummer in Form eines Chiffretexts zu erstellen. Diese Datenbank sollte jedoch keine sich häufig ändernden Dateiinformationen wie Protokolldateien, E-Mails, /proc-Dateisysteme, Benutzer-Home-Verzeichnisse, temporäre Verzeichnisse usw. speichern. Wenn das Betriebssystem kompromittiert ist, können Dokumentänderungen durch einen Vergleich mit der Basisdatenbank ermittelt werden. Diese Methode kann Benutzern helfen, ungewöhnliche Situationen schnell zu erkennen und umgehend zu reagieren. Der Blog-Beitrag verwendet die Installation und Verwendung von AIDE in der Centos7-Umgebung als Beispiel, um die Umgebungsbeschreibung vorzustellen:

  • Betriebssystem: Centos7.6
  • Hilfsversion: 0.15.1

2. AIDE-Installations- und Verwendungsbeispiele

1. Installieren Sie Aide mit Yum

  Hilfswerkzeuge

[root@s166 ~]# yum install -y aide
Transaktion wird ausgeführt
Seizai Anso: aide-0.15.1-13.el7_9. 1.x86_64 1/1
验证中: aide-0.15.1-13.el7_9.1.x86_64 1/1

已安裹: Abgeschlossen!
aide.x86_64 0:0.15.1-13.el7_9.1

2. Überprüfen Sie die Konfigurationsdatei aide.conf

  Als Intrusion-Detection-Tool ist AIDE im Wesentlichen ein Tool zur Überprüfung der Dateiintegrität, das die Integrität wichtiger in der Konfigurationsdatei angegebener Dateien überwachen und überprüfen kann. Es verwendet MD5- und SHA-Werte, um zu überprüfen, ob das Dokument aktualisiert und geändert wurde. Wenn Wenn Änderungen auftreten, wird nach der Erkennung bestätigt, ob die Änderung aktiv vom Administrator oder von einem Eindringling vorgenommen wurde.

[root@s166 ~]# cat /etc/aide.conf |grep -Ev „^#|^$“
@@define DBDIR /var/lib/aide< /span> /etc/host.conf$ CONTENT_EX /etc/hosts$ CONTENT_EX /bin/ CONTENT_EX /boot/ CONTENT_EX DATAONLY = p+n+u+g+s+acl+selinux+xattrs+sha256 CONTENT_EX = sha256+ftype+p+u+g+n+acl+selinux +xattrs CONTENT = sha256+ftype LOG = p+u +g+n+acl+selinux+ftype STATIC = p+u+g+acl+selinux+xattrs+i+n+b+c+ftype PERMS = p+u+g+acl +selinux+xattrs DIR = p+i+n+u+g+acl+selinux+xattrs NORMAL = sha256 EVERYTHING = R+ALLXTRAHASHES ALLXTRAHASHES = sha1+rmd160+sha256+sha512+tiger FIPSR = p+i+n+u+g+s+m +c+acl+selinux+xattrs+sha256 report_url=stdout report_url=file:@@{LOGDIR}/aide.log verbose=5 gzip_dbout=yes Database_out=file:@@{DBDIR}/aide.db.new.gz Database=file:@@{DBDIR}/aide.db.gz
@@define LOGDIR /var/log/aide






















3. Initialisieren Sie die Konfigurationsdatenbank

  „Um die Anfangsdaten für die Erkennung von Systemeinbrüchen zu erhalten, müssen wir zuerst die Aide-Datenbank initialisieren und den i-Parameter verwenden, um die Datenbankinitialisierung abzuschließen. Die durch die Initialisierung generierte Datei lautet aide.db.new.gz. Verwenden Sie -i oder –init, um die Datenbank zu initialisieren.

[root@s166 ~]# aide -i

AIDE, Version 0.15.1
### AIDE-Datenbank unter /var/lib/ aide/aide.db.new.gz initialisiert.

4. Ermitteln Sie die Konfigurationsdatenbank

  Verwenden Sie den Parameter -C oder –check, um die Datenbank zu überprüfen.

[root@s166 aide]# aide --check

5. Erkennen und aktualisieren Sie die Konfigurationsdatenbank

  Beim Aktualisieren der Datenbank wird tatsächlich zuerst geprüft und dann aktualisiert, d. h. zuerst werden die Dateiänderungen überprüft und dann wird die Ausgabe auf die neue Datenbankdatei aktualisiert.

[root@s166 aide]# aide --update

6. Konfigurationsdatenbank vergleichen

  Der Vergleich von Datenbankkonfigurationsdateien erfordert die Angabe der Parameter „database“ und „database_new“ in der Konfigurationsdatei. Die Vergleichsergebnisse sind die gleichen wie bei Update und Check.

[root@s166 aide]# aide --compare

3. Einführung in die Verwendung der AIDE-Intrusion-Detection

  Der Kern des AIDE-Intrusion-Detection-Tools besteht darin, den Hash-Wert der in der Konfigurationsdatei angegebenen Datei in der Datenbankdatei zu speichern und ihn dann während der Erkennung erneut zu berechnen und zu vergleichen. Wir können den Unterschied nur feststellen, aber wir können Ihnen nicht die Details des Unterschieds nennen. Daher müssen wir die zu überwachenden Dateien im Voraus sichern und sie vergleichen, nachdem wir Änderungen und Aktualisierungen in den Dateien festgestellt haben, damit sie repariert und wiederhergestellt werden können. Die Überwachungsrichtlinie umfasst Berechtigungen, Dateitypen, ACLs, Zeitattribute usw. Wir erkennen also nicht nur Änderungen der Dateigröße, sondern auch zugehörige Parameter von Dateiattributen.

1. Ändern Sie die Hosts-Datei, um AIDE zu testen

  • Ändern Sie die Datei /etc/hosts

[root@s166 ~]# echo „192.168.0.1 gw“ >> /etc/hosts
[root@s166 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4< a i=3> ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.0.166 s166 192.168.0.167 s167 192.168.0.168 s168 192.168.0.1 gw




  • Benennen Sie die Datenbankinitialisierungsdatei um

[root@s166 aide]# mv aide.db.new.gz aide.db.gz

  • Führen Sie eine Aide-Datenbankprüfung durch

[root@s166 aide]# aide --check
Eintrag /etc/hosts in Datenbanken hat unterschiedliche Attribute: b4020081d a4020081d

Fügen Sie hier eine Bildbeschreibung ein

2. Fügen Sie eine Konfigurationsdatenbank für den Benutzertestvergleich hinzu

  • Ändern Sie die Konfigurationsdatei, um die Parameter für den Speicherpfad der Datenbankdatei anzugeben

[root@s166 aide]# cat /etc/aide.conf |grep Datenbank

Datenbank=Datei:@@{DBDIR} /aide.db.gz
Database_new=file:///var/lib/aide/aide.db.new
Database_out=file:///var /lib/aide/aide.db.new

  • Fügen Sie einen Benutzer hinzu

[root@s166 aide]# useradd test

  • Führen Sie ein Metabasis-Update durch

[root@s166 aide]# aide --update
Fügen Sie hier eine Bildbeschreibung ein

  • Führen Sie einen Datenbankvergleich durch
    Fügen Sie hier eine Bildbeschreibung ein

3. Überwachen Sie die angegebenen Konfigurationsdateien

  • Um eine Konfigurationsdatei zum Überwachen einer bestimmten Datei zu schreiben, kann ich die Datei aide.conf kopieren, den Inhalt der nachfolgenden Überwachungsdatei löschen und die Zeile /home/test/a.conf CONTENT_EX hinzufügen, die die Konfigurationsdatei und die Überwachungsstrategie darstellt wir müssen überwachen. Nach dem Testen können wir feststellen, dass die Initialisierung der Standardkonfigurationsdatei aide.conf noch einige Zeit in Anspruch nimmt. Wenn wir eine benutzerdefinierte Konfigurationsdatei initialisieren, geht dies sehr schnell, da wir nur eine Datei und die Standarddatei angepasst und überwacht haben enthält Hunderte von Dateien.

[root@s166 aide]# cat aidetest.conf |grep -Ev „^$|^#“
@@define DBDIR /var/lib/aide
@@define LOGDIR /var/log/aide
Datenbank=Datei:@@{DBDIR}/aide.db.gz
Datenbank_out= Datei:@@{DBDIR}/aide.db.new.gz
Datenbank_neu=Datei:@@{DBDIR}/aide.db.new.gz
gzip_dbout=yes
verbose=5
report_url=file:@@{LOGDIR}/aide.log
report_url=stdout< /span> CONTENT = sha256+ftype /home/test/a.conf CONTENT_EX DATAONLY = p+n+u+g+s+acl+selinux+ xattrs+sha256 CONTENT_EX = sha256+ftype+p+u+g+n+acl+selinux+xattrs LOG = p+u+g+n+acl+selinux+ftype STATIC = p+u+g+acl+selinux+xattrs+ i+n+b+c+ftype PERMS = p+u+g+acl+selinux+xattrs DIR = p+i+n+u+g+ acl+selinux+xattrs NORMAL = sha256 ALLES = R+ALLXTRAHASHES ALLXTRAHASHES = sha1+rmd160+sha256+ sha512+tiger
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256










  • Erstellen Sie eine leere Konfigurationsdatei

[root@s166 test]# touch a.conf

  • Konfigurationsdatenbank initialisieren

[root@s166 aide]# aide -c aidetest.conf -i
[root@s166 aide]# mv aide.db.new.gz aide.db.gz< /span>

  • Aktualisieren Sie eine.conf-Datei

[root@s166 test]# echo „Das ist eine Änderung“ >> a.conf

  • Überprüfen Sie, ob die Konfigurationsdatei geändert wurde

[root@s166 aide]# aide -c aidetest.conf -C
Fügen Sie hier eine Bildbeschreibung ein

  • Berechtigungen ändern

[root@s166 test]# chmod -x a.conf

  • Konfigurationsdatenbank prüfen

[root@s166 aide]# aide -c aidetest.conf -C
Fügen Sie hier eine Bildbeschreibung ein

  • Prüfergebnisse in Datei schreiben

[root@s166 aide]# aide -c aidetest.conf -C -r file:/tmp/report
#Wir können die Prüfergebnisse in die Datei schreiben, damit wir Es kann mit geplanten Aufgaben kombiniert werden, um regelmäßig Inspektionen durchzuführen, und der Ergebnisbericht kann per E-Mail an das Postfach des Managers gesendet werden, um die angegebene Konfigurationsdatei zu überwachen. Wenn das Prüfergebnis „### Alle Dateien stimmen mit der AIDE-Datenbank überein. Sieht in Ordnung!“ lautet, bedeutet dies, dass die Konfigurationsdatei nicht geändert wurde. Wenn sie anderen Hash-Inhalt enthält, bedeutet dies, dass das Dokument geändert wurde.

4. Beschreibung häufig verwendeter Dateien und Strategieparameter

1. Häufig verwendete Dateibeschreibungen

  • Standardkonfigurationsdatei für den Dienst /etc/aide.conf
  • /var/lib/aide.db.gz Standard-Aide-Datenbank
  • /var/lib/aide.db.new.gz Standard-Aide-Ausgabedatenbank

2. Beschreibung der Strategieparameter

  Parameterkonfigurationen wie DIR = p+i+n+u+g+acl+selinux+xattrs in der Konfigurationsdatei stellen alle definierte Inspektionsstrategien dar. Die Konfiguration definiert standardmäßig Erkennungsstrategien für Verzeichnisse, statische Dateien, Protokolle und andere Dateitypen. Jeder Parameter wird unten erklärt, wir können ihn zur Auswahl heranziehen.

Strategieparameter Parameterbeschreibung
P Aktivieren Sie die Überprüfung von Dateiattributen, einschließlich Berechtigungen, Eigentümer und Gruppe.
In Aktivieren Sie die Überprüfung der Benutzer-ID und Gruppen-ID.
G Aktivieren Sie die Gruppen-ID-Prüfung.
acl Aktivieren Sie die Überprüfung der Zugriffskontrollliste (ACL).
Selinux Aktivieren Sie die SELinux-Kontextprüfung.
xattrs Aktivieren Sie die erweiterte Attributprüfung.
ich Aktivieren Sie die Inode-Überprüfung.
N Aktivieren Sie die Überprüfung der Gerätenummer und Knotennummer.
B Blockgrößenprüfung aktivieren.
C Aktivieren Sie die Zeichensatzprüfung.
ftype Aktivieren Sie die Dateitypprüfung.
S Aktivieren Sie die Größenprüfung, einschließlich Dateigröße und Verzeichnisgröße.
M Aktivieren Sie die Überprüfung der Änderungszeit, einschließlich Dateiänderungszeit und Verzeichnisänderungszeit.

Guess you like

Origin blog.csdn.net/carefree2005/article/details/133813865