GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erste Schritte mit Lynis Security Auditing

Hacker sind immer da draußen und suchen nach ihren nächsten Opfern? Ist die Sicherheit Ihrer Linux-Geräte ein besorgniserregendes Thema und etwas, das Sie verbessern möchten? Schau nicht mehr hin. In diesem Artikel lernen Sie ein Tool namens Lynis von CISOfy kennen, das Ihnen hilft, Schwachstellen-Scans durchzuführen, um Probleme zu erkennen, bevor sie entstehen.

Sie erfahren, wie Sie verschiedene Sicherheitsprüfungen durchführen, und tauchen in die Berichte ein, die das Lynis-Tool bereitstellt. Lesen Sie weiter, um mit dem Auditing zu beginnen!

Voraussetzungen

Um Lynis zu verwenden und die Demos in diesem Lernprogramm durchzuspielen, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Eine Debian-Linux-Distribution – Dieses Tutorial verwendet Ubuntu 20.04 LTS.
  • Eingehender SSH- und ICMP-Datenverkehr vom Lynis-Host zu allen auditierbaren Remote-Hosts zugelassen.
  • Ein Nicht-Root-Benutzer mit sudo Privilegien.

Installieren von Lynis

Beginnen Sie dieses Tutorial, indem Sie sich mit Lynis vertraut machen und lernen, wie das Tool installiert wird.

Lynis ist ein Open-Source-Sicherheitsaudit-Tool für Unix/Linux-ähnliche Systeme und führt gründliche Schwachstellenscans auf fast allen UNIX-basierten Systemen durch und bietet Folgendes.

  • Sicherheitsprüfung: Testen von SSL-Zertifikaten, Benutzerkonten ohne Passwörter und mehr.
  • Systemhärtung: Software-Patches, Anpassungen der Netzwerkkonfiguration, Inkonsistenzen bei Dateiberechtigungen.
  • Scannen auf Schwachstellen: Validierung von Paketen gegen bekannte Schwachstellen von Datenbanken wie CVE.
  • Berichte zur Konfigurationskonformität und Behebung: Validierung des aktuellen Zustands von Endpunkten anhand vordefinierter Richtliniendokumente.

Lynis zeigt Ihnen nur potenzielle Sicherheitsprobleme; es wird keine Maschinen für Sie verhärten.

Jetzt ist es an der Zeit, Lynis zu installieren, damit Sie die Funktionen nutzen können. Melden Sie sich bei Ihrem Ubuntu- oder Debian-basierten Linux-Host als Nicht-Root-Benutzer mit sudo-Berechtigungen an und folgen Sie den Anweisungen unten, um Lynis zu installieren.

1. Aktualisieren Sie zunächst Ihre apt-Paket-Repositories, sodass Ihre Repositories über die erforderlichen Lynis-Pakete verfügen.

Sie können Lynis über apt-get installieren , Quell-Tarball oder durch Klonen des GitHub-Repositorys. In diesem Tutorial wird Lynis über apt-get installiert .

# Downloads the package lists from the repositories and "updates" them 
# to get information on the newest versions of packages and their dependencies
sudo apt-get -y update

# Fetches new versions of packages existing on the machine and handle
# the dependencies so it might remove obsolete packages or add new ones
sudo apt-get -y dist-upgrade

# Download (wget) and install apt-transport-https. The apt-transport-https 
# is an APT transport method. This APT transport method allows APT to use 
# HTTPS certificates when downloading repository metadata and packages from servers.
sudo apt install apt-transport-https wget -y

Laden Sie als Nächstes den öffentlichen Schlüssel aus dem offiziellen Repository-Signaturschlüssel über wget herunter und fügen Sie den Schlüssel mit apt-key zu APT hinzu Befehl.

Der öffentliche Schlüssel bietet eine Methode zur Verifizierung, dass eine vertrauenswürdige Entität die Software signiert. In diesem Fall die apt-get Paketmanager in Debian.

wget -O - https://packages.cisofy.com/keys/cisofy-software-public.key | sudo apt-key add -

Sie sehen ein OK Meldung, die anzeigt, dass der Schlüssel korrekt hinzugefügt wurde.

3. Fügen Sie nun das Lynis-Repository hinzu (cisofy-lynis ) in die Systempaket-Repository-Liste mit dem folgenden Befehl

echo "deb https://packages.cisofy.com/community/lynis/deb/ stable main" | sudo tee /etc/apt/sources.list.d/cisofy-lynis.list

4. Führen Sie als Nächstes die folgenden Befehle zu update aus der Paketliste und installieren Sie Lynis mit dem apt Paket-Manager.

sudo apt-get -y update # Update the package list
sudo apt install lynis -y # Install Lynis

Führen Sie abschließend den folgenden Befehl aus, um die installierte Version von Lynis zu überprüfen. Wie Sie unten sehen können, gibt der Befehl die installierte Lynis-Version zurück.

Zum jetzigen Zeitpunkt ist die aktuelle stabile/neueste veröffentlichte Version von Lynis 3.0.6.

sudo lynis show version

Wie Sie unten sehen können, gibt der Befehl die installierte Lynis-Version zurück.

Überprüfen von Lynis-Befehlen und -Einstellungen

Wenn Lynis installiert ist, ist es an der Zeit, einige seiner Befehle und Konfigurationsoptionen zu überprüfen. Führen Sie show aus Befehl mit dem commands Argument, um alle verschiedenen Lynis-Befehle anzuzeigen.

sudo lynis show commands

Lynis verfügt über verschiedene Einstellungen, um sein Verhalten anzupassen. Führen Sie lynis show settings aus um die mehreren Einstellungen zu überprüfen, die in der Lynis-Konfigurationsdatei definiert sind. Die Konfigurationsdatei befindet sich im Allgemeinen unter /etc/audit Verzeichnis.

Wenn Lynis läuft, sucht es zuerst nach der Konfigurationsdatei im Verzeichnis /etc/audit. Wenn es nicht gefunden wird, wird es versuchen, es in Ihrem Home-Verzeichnis zu finden.

sudo lynis show settings

Führen Sie für eine vollständige Liste der Lynis-Optionen und -Syntax man lynis aus Befehl.

Aufrufen von einem Audit

Lynis ist ein Auditing-Tool, also lassen Sie uns Ihr erstes Sicherheitsaudit durchführen. Wenn Sie ein Sicherheitsaudit durchführen, überprüft Lynis das System und die Softwarekonfiguration auf Sicherheitsprobleme.

Führen Sie lynis audit system aus Befehl wie unten gezeigt, um ein Audit auf Ihrem System durchzuführen.

Es wird empfohlen, Lynis als Root (oder als anderer Benutzer mit vollen Rechten) auszuführen, um alles zu testen, was auf Ihrem System verfügbar ist. Der Scan bietet Verbesserungsvorschläge und zeigt, welche Teile Ihres Systems keine Sicherheitshärtung aufweisen.

sudo lynis audit system

Das Ergebnis des Befehls ist ein ausführlicher Bericht, den Sie in den folgenden Abschnitten aufgeschlüsselt sehen. Denken Sie also daran, dass die nächsten Screenshots das Ergebnis der Ausführung von lynis audit system sind melden.

Verständnis des Prüfungsberichts

Die system Audit bietet einen ausführlichen Bericht zu verschiedenen Bereichen, darunter:

  • Verzeichnisse und Dateien im Zusammenhang mit Protokollierung und Auditing
  • Dienste wie der SSH-Daemon, der Apache-Webserver, die MySQL-Datenbank und andere
  • Sicherheitsaspekte wie Passwortstärke, Dateisystemquoten und Speichernutzung (Heap)

Um den Schweregrad zu kategorisieren, verfügt Lynis über mehrere Statusstatus sowie farbcodierte Ergebnisse, die den Schweregrad jedes gefundenen Problems angeben.

  • OK – Alle erforderlichen Tests wurden erfolgreich abgeschlossen.
  • WARNUNG – Ein Problem, das nach Möglichkeit überprüft und behoben werden sollte.
  • FEHLER – Ein Test ist fehlgeschlagen, der die Systemsicherheit beeinträchtigen kann.
  • GEFUNDEN – Lynis hat das angeforderte Objekt gefunden, das normalerweise zum Auffinden bestimmter Dateien verwendet wird.
  • NICHT GEFUNDEN – Lynis konnte das angeforderte Objekt nicht finden.
  • VORSCHLAG – Ein unkritischer Vorschlag, der für Maßnahmen bewertet werden sollte.
  • FERTIG – Wird normalerweise verwendet, um anzuzeigen, dass eine Aufgabe erledigt ist, z. B. das Abfragen von Daten.

Kernel“-Ergebnisse verstehen

Die Kernel-Audit-Unterstützung ist bei den meisten modernen Linux-Distributionen standardmäßig aktiviert. Lynis prüft, ob Sie Kernel-Sicherheitsfunktionen wie SELinux, AppArmor oder GRSecurity verwenden.

Bewertung der Ergebnisse von „Speicher und Prozessen“

Lynis führt viele Tests durch, um zu überprüfen, wie viel Speicher verwendet wird, und andere damit zusammenhängende Prozessprobleme. Wenn eine Anwendung beispielsweise zu viel Speicher verwendet, kann sie zu einem Denial-of-Service-Vektor (DoS) werden. Lynis prüft, ob Dienste wie httpd oder sshd Informationen preisgeben.

Überprüfen der Ergebnisse von „Software:Firewalls“

In diesem Test prüft Lynis das Kernelmodul iptables. Es kann auch überprüfen, ob Ihre Firewall-Einstellungen für Software-Firewalls in Ordnung sind, einschließlich FireHOL, FireQoS, IPCop, IPTables (Netfilter), Kerio Control.

Bewertung der Ergebnisse „unsicherer Dienste“

Lynis scannt auch nach unsicheren Diensten wie FTP und Telnet. Diese Dienste können zu einem erheblichen Sicherheitsrisiko führen, insbesondere die ersten beiden, wenn sie über ein mit dem Internet verbundenes System offengelegt werden.

Darüber hinaus führt Lynis auch Prüfungen für Dienste durch, bei denen Sie möglicherweise die Sicherheit verbessern möchten, wie z. B. SSH-Porteinstellungen, BIND-Nameservereinstellungen und vieles mehr.

Lynis-Dateien finden

Der Bericht wird auf der Konsole generiert, aber Lynis erstellt auch eine Protokolldatei und eine Berichtsdatei. Der Berichtspfad ist /var/log/lynis-report.dat . Der detailliertere Protokollbericht mit Test- und Debugging-Protokollinformationen befindet sich in /var/log/lynis.log.

Die Informationsprotokolldatei wird nach jedem Scan protokolliert, während die Informationen für die Berichtsdatei erst nach Abschluss der Prüfung gespeichert werden.

Die Informationen, die in die Protokolldatei eingehen:

  • Überprüfungsinformationen: gefundene Konfigurationselemente, Verbesserungsvorschläge und Sicherheitsrisiken.
  • Testergebnis (und andere Ergebnisse): Art der Prüfung und Grund für die Durchführung einer Prüfung.
  • Debugging-Informationen: verwendet, um Probleme zu untersuchen oder wie etwas funktioniert. Die Details können vollständige Befehlszeilen oder zusätzliche wertvolle Informationen zur Fehlerbehebung enthalten.

Inspizieren spezifischer Tests anhand von Warnungen und Vorschlägen

Nachdem Sie nun einen Bericht erstellt haben, besteht der nächste Schritt darin, zu untersuchen, wie die von Lynis gemeldeten Schwachstellen behoben werden können.

Wenn Lynis einen Scan abgeschlossen hat, erhalten Sie eine Ergebnisliste. Einige dieser Ergebnisse können Warnungen oder Vorschläge sein. Jede Warnung oder jeder Vorschlag hat eine kurze Erklärung und einen Link zur Kontrollgruppe, wo Sie weitere Informationen zu der Nachricht finden und wie Sie die Warnungen beheben können.

Die folgende Warnung weist Sie beispielsweise darauf hin, dass Lynis einen Systemscan durchgeführt hat und Sie den Host aufgrund eines wahrscheinlichen Kernel-Upgrades neu starten sollten. Sie werden sehen, dass jeder Warnung eine Test-ID zugeordnet ist. In diesem Fall lautet die ID KRL-5830 . Weitere Informationen zur Warnung finden Sie über ihre ID.

Lassen Sie uns auf eine bestimmte Warnung eingehen. Führen Sie dazu show details aus Befehl, der die Test-ID bereitstellt, über die Sie mehr erfahren möchten. Dasselbe KRL-5830 wie früher zB. Der vollständige Befehl folgt.

sudo lynis show details KRNL-5830

Sobald Sie show details ausführen Befehl, wird Lynis ein ausführliches Protokoll darüber bereitstellen, was es getan hat und wie es zu der Warnung gekommen ist, wie unten gezeigt.

Sie können die Test-ID für Vorschläge genauso finden wie für Warnungen.

Anpassen von Lynis Scan-Profilen

Um Tests zu gruppieren, Tests zu aktivieren oder zu deaktivieren, den Umfang der Tests zu definieren und mehr, hat Lynis Scanprofile in /etc/lynis gespeichert Verzeichnis. Scan-Profile haben verschiedene Konfigurationen, die eine praktische Möglichkeit bieten, ähnliche Tests in großen Mengen zu verwalten, anstatt sie einzeln zu verwalten.

Lynis wird nur mit einem Scanprofil namens default geliefert standardmäßig, wie Sie sehen können, indem Sie show profiles ausführen Befehl. Das Standardprofil ist so generisch wie möglich.

sudo lynis show profiles 

Wenn Sie es vorziehen, nicht alle Tests auszuführen, die Ausgabe auf irgendeine Weise zu modifizieren oder das Verhalten in irgendeiner Weise zu ändern, können Sie Profile erstellen oder bearbeiten. Öffnen Sie beispielsweise /etc/lynis/default.prf Scan-Profil in Ihrem bevorzugten Editor. Unten sehen Sie den Inhalt der Standard Scanprofil.

Sie können entweder das standardmäßige Scanprofil ändern oder ein eigenes erstellen. Vielleicht haben Sie zum Beispiel einige Tests, die Sie überspringen möchten. Sie können Lynis mitteilen, welche Tests übersprungen werden sollen, indem Sie skip-test festlegen -Attribut in einem Scanprofil.

Um ein benutzerdefiniertes Profil zu erstellen, kopieren Sie die Datei default.prf Scan-Profil und nennen Sie es etwas Bestimmtes wie custom.prf . Öffnen Sie das Scanprofil in einem Texteditor und fügen Sie die folgenden Attribute hinzu. Lynis überspringt immer die beiden Tests, deren IDs Sie unten angeben, wenn Sie dieses Scanprofil aufrufen.

# Skip checking password set for single mode.

skip-test=AUTH-9308

# Skip checking the PKGS-7392 package.

skip-test=PKGS-7392

Sie können beliebig viele benutzerdefinierte Profile haben. Es kann jedoch nur jeweils ein benutzerdefiniertes Profil ausgeführt werden.

Erstellen eines benutzerdefinierten Profils

Möglicherweise möchten Sie Ihre Lynis-Tests anpassen und können dazu ein benutzerdefiniertes Profil erstellen. Um zu erfahren, wie das geht, folgen Sie unten.

1. Erstellen Sie eine custom.prf Datei in /etc/lynis/ Verzeichnis mit dem nano Editor.

sudo nano /etc/lynis/custom.prf

2. Füllen Sie die Datei custom.prf. aus In diesem Beispiel versuchen Sie, zwei Warnungen zu überspringen:AUTH-9308 und PKGS-7392.

Um die Tests zu überspringen, fügen Sie der Datei den folgenden Inhalt hinzu.

# Skip checking password set for single mode.

skip-test=AUTH-9308

# Skip checking the PKGS-7392 package.

skip-test=PKGS-7392

3. Speichern und beenden Sie die Datei, indem Sie Strg + O drücken dann Strg + X wenn fertig. Wenn Sie das nächste Mal eine Lynis-Prüfung ausführen, wird die angegebene Test-ID wie unten gezeigt übersprungen.

sudo lynis audit system

Wie Sie sehen können, sind die beiden obigen Warnungen verschwunden.

Interpretation des Lynis Hardening Index

Wenn ein Scan abgeschlossen ist, stellt Lynis Ihnen eine Zusammenfassung bereit. In dieser Zusammenfassung finden Sie eine interessante Metrik namens Hardening Index . Der Härtungsindex ist eine Zahl, die basierend auf der Gesamtbedrohung für den gescannten Host basierend auf dem letzten Scan berechnet wird.

Der Härtungsindex gibt Ihnen einen Hinweis darauf, wie sicher Ihr System ist. Wenn Ihr System beispielsweise mehr kritische Schwachstellen als üblich aufweist, ist der Index niedriger. Wenn Sie Warnungen beheben oder Vorschläge umsetzen, erhöht sich dieser Härtungsindex entsprechend.

Die folgende Ausgabe zeigt Ihnen die Anzahl der von Lynis durchgeführten Tests und die Hardening-Indexwerte, die beim Ausführen dieses Audit-Tools gefunden wurden. Die Zahl 239 bedeutet, dass es 239 Tests durchgeführt hat, und die Punktzahl entspricht 60 % des Weges zur Abhärtung.

Schlussfolgerung

Inzwischen sollten Sie ein solides Verständnis des Lynis-Vulnerability-Scanning-Tools haben und wissen, wie es Ihnen hilft, Ihre Hosts zu schützen. Mit Lynis können Sie Ihre Systeme jetzt regelmäßig auf die neuesten Schwachstellen scannen und Ihre Hosts schützen!.

Wenn Sie dieses Tutorial befolgt haben, sind Sie mit dem zurückerhaltenen Hardening-Index zufrieden? Welche Änderungen werden Sie vornehmen, um es zu verbessern?


Linux
  1. Scannen Sie Ihre Linux-Sicherheit mit Lynis

  2. Erste Schritte mit Zsh

  3. Erste Schritte mit ls

  4. 5 Tipps für den Einstieg in die Linux-Serversicherheit

  5. Erste Schritte mit Samba für Interoperabilität

Erste Schritte mit dem Linux-Betriebssystem

Erste Schritte mit GitHub

Erste Schritte mit Nix Package Manager

Erste Schritte mit systemctl

Sicherheitsaudit mit Lynis

So führen Sie mit Lynis ein Sicherheitsaudit auf AlmaLinux durch