Integrity Monitoring: AIDE/IMA/EVM im Setup verankern

Integrity Monitoring ist ein entscheidender Bestandteil einer sicheren Linux-Infrastruktur. Tools wie AIDE, IMA und EVM ermöglichen es, Veränderungen an kritischen Dateien und Systemkomponenten frühzeitig zu erkennen. Dieses Tutorial zeigt, wie man Integrity Monitoring direkt in das Setup verankert, um Manipulationen vorzubeugen und Audit-Readiness zu erreichen.

AIDE: Advanced Intrusion Detection Environment

AIDE ist ein Host-basiertes Intrusion Detection System (HIDS), das Prüfsummen und Metadaten von Dateien erstellt, um unautorisierte Änderungen zu erkennen. Durch die Integration in den Setup-Prozess kann AIDE sofort nach der Installation eine Baseline erstellen.

Installation und Initialisierung

apt install aide       # Debian/Ubuntu
yum install aide       # RHEL/CentOS/Fedora

Initiale Datenbank erstellen

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

Konfiguration

Die Konfiguration befindet sich typischerweise in /etc/aide/aide.conf. Wichtig ist, sensible Verzeichnisse wie /etc, /bin und /usr/bin zu überwachen:

@@rules
/etc/   R+sha256
/bin/   R+sha256
/usr/bin/   R+sha256

Regelmäßige Überprüfung

# Tägliche Prüfung per Cron
0 5 * * * /usr/bin/aide --check

IMA: Integrity Measurement Architecture

IMA misst Dateien bei Zugriffen und speichert die Messwerte im Kernel, typischerweise auf TPM oder im EVM-Signaturformat. Dies bietet Schutz gegen Manipulationen zur Laufzeit.

Aktivierung im Kernel

  • Kernel muss mit CONFIG_IMA und CONFIG_EVM kompiliert sein.
  • Boot-Parameter setzen: ima_appraise=fix ima_policy=tcb

Grundlegende Policy

# Beispielhafte IMA-Policy in /etc/ima/ima-policy
measure func=BPRM_CHECK mask=MAY_EXEC
measure func=FILE_CHECK mask=MAY_READ
appraise func=BPRM_CHECK mask=MAY_EXEC

Verifikation

# IMA Log prüfen
journalctl -k | grep ima

EVM: Extended Verification Module

EVM schützt die Integrität von Extended Attributes, die für IMA-Signaturen relevant sind, insbesondere security.ima und security.evm. Es verhindert, dass Angreifer Signaturen manipulieren.

Konfiguration

  • EVM wird über das Modul evm geladen.
  • Prüfung kritischer Dateien sicherstellen: evmctl kann zum Signieren und Verifizieren verwendet werden.

Beispiel für Signierung

evmctl sign --key /root/evm.key --cert /root/evm.crt /etc/ssh/sshd_config
evmctl verify /etc/ssh/sshd_config

Integration in Setup-Pipeline

Um maximale Sicherheit zu erreichen, sollte die Baseline-Erstellung von AIDE, IMA und EVM direkt nach der Systeminstallation erfolgen.

Automatisierung

  • Im Kickstart/Preseed Skript AIDE initialisieren:
  • #!/bin/bash
    aideinit
    mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
    
  • IMA Policy kopieren und Kernel-Parameter setzen:
  • cp /usr/share/ima/ima-policy /etc/ima/ima-policy
    grubby --update-kernel=ALL --args="ima_appraise=fix ima_policy=tcb"
    
  • EVM Schlüssel generieren und initial signieren:
  • evmctl create_key --path /root/evm.key
    evmctl create_cert --key /root/evm.key --cert /root/evm.crt
    

Monitoring und Reporting

Integritätsevents sollten zentral gesammelt und analysiert werden, z.B. über SIEM oder zentrale Logging-Lösungen.

Beispiele

# AIDE Reports per Mail
0 6 * * * /usr/bin/aide --check | mail -s "AIDE Report" admin@example.com

IMA Events überwachen

journalctl -kf | grep ima

Best Practices

  • Initiale Baseline direkt nach Installation erstellen
  • Regelmäßige Überprüfung und Alerts einrichten
  • Signaturen und Keys sicher lagern, idealerweise TPM oder HSM
  • Nur relevante Dateien überwachen, um Noise zu reduzieren
  • Policy und Regeln versionieren, z.B. via Git

Fazit

Durch die kombinierte Nutzung von AIDE, IMA und EVM lässt sich ein effektives Integrity Monitoring auf Linux-Servern etablieren. Die Integration in das Setup sorgt dafür, dass Abweichungen von der Baseline frühzeitig erkannt werden, Manipulationen verhindert werden und Compliance-Anforderungen erfüllt sind.

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

  • Professionelle Konfiguration von Routern und Switches

  • Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen

  • Erstellung von Topologien und Simulationen in Cisco Packet Tracer

  • Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG

  • Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible

  • Erstellung von Skripten für wiederkehrende Netzwerkaufgaben

  • Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege

  • Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Related Articles