Sicherheits-Audits für Linux-Systeme mit Lynis

Aus LinuxUser 10/2022

Sicherheits-Audits für Linux-Systeme mit Lynis

© Pavlo Burdyak / 123RF.com

Härten wie ein Profi

Bei modernen Distributionen handelt es sich um komplexe Systeme, die viele potenzielle Einfallstore für Schadsoftware bieten. Lynis hilft Ihnen, sie zu finden, bevor es einem Angreifer gelingt.

Kaum ein Anwender nutzt noch einen PC ohne Internet-Zugang. Doch das Netz der Netze wimmelt geradezu von Schadprogrammen, die Sicherheitslücken in Betriebssystemen, Firmware und Anwendungsprogrammen ausnutzen, um Malware einzuschleusen oder persönliche Daten zu stehlen. Daher gehört es für IT-Administratoren in Unternehmen und Organisationen zur täglichen Arbeit, die anvertrauten Systeme bestmöglich davor zu schützen.

Doch auch Privatanwender sollten darauf achten, ihren Rechner nicht nur stets aktuell zu halten, sondern außerdem gelegentlich einen Sicherheitsscan auszuführen, der Schwachstellen aufdeckt. Das als freie Software konzipierte Lynis [1] berücksichtigt verschiedenste Problemszenarien, sodass Sie damit regelmäßige Systemprüfungen im Handumdrehen erledigen.

Erster Start

Das Konsolenprogramm umfasst eine Sammlung von Skripten für unixoide Systeme, die verschiedenste verwundbare Komponenten eines Systems auf problematische Einstellungen hin prüft und die Ergebnisse farblich differenziert anzeigt. Sie finden die Applikation in den Repositories vieler Distributionen und installieren Sie dann bequem über die gängigen Paketverwaltungswerkzeuge. Darüber hinaus steht Lynis auf der Webseite des Herstellers in mehreren Varianten bereit.

Tatsächlich empfiehlt es sich, Lynis direkt von der Webseite des Herstellers zu installieren, da Sie dort stets die aktuellste Version finden [2]. Das Unternehmen Cisofy aus Vlijmen in den Niederlanden bietet die Software in der Community-Variante kostenfrei an. Der Download enthält die eigentliche Applikation, jedoch fehlen Zusatzprogramme und auch der sogenannte Collector. Lynis bringt von Haus aus einige von der Community bereitgestellte Plugins mit.

Für Unternehmen

Die Enterprise-Variante, die in SaaS-Form bereitsteht, richtet sich an Unternehmen mit mehr als zehn zu überwachenden Arbeitsplätzen. Sie enthält bereits zahlreiche Plugins und generiert zusätzlich webbasierte Berichte nach unterschiedlichen Standards. Außerdem erlaubt sie es, in Container-Umgebungen auch Docker-Files zu prüfen und entfernte Computersysteme zu überwachen.

Dieses Paket bietet Cisofy als Subskription für 3 US-Dollar pro Monat an. Für größere Organisationen mit mehr als 100 zu überwachenden Arbeitsplätzen steht ein Paket für das Aufsetzen einer lokalen Lynis-Instanz im Intranet bereit. Diese Variante enthält ebenfalls alle Zusatzpakete und eignet sich auch für Dienste, die Sicherheits-Audits für andere Unternehmen anbieten [3].

Auf Kommando

Für die Community-Variante finden Sie auf der Webseite des Herstellers ausführliche Anleitungen zur Installation der Software unter verschiedenen Distributionen [4]. Sie führen das Programm im Anschluss über das Kommando lynis Parameter im Terminal aus. Um die verfügbaren Kommandoparameter aufzurufen, tippen Sie lynis show.

Der zentrale Befehl zum Prüfen des lokalen Systems lautet lynis audit system. Die Anwendung führt nun über 200 Testparameter aus und zeigt die Ergebnisse nach einiger Zeit in einer einfachen Tabelle an (Abbildung 1). Hinter jeder Testkategorie erscheint das Ergebnis in grüner, gelber oder roter Farbe. Bei gelb angezeigten Ergebnissen empfiehlt sich das Prüfen der jeweiligen Einstellung, bei roter Textfarbe sollten Sie den entsprechenden Dienst umkonfigurieren. Nicht im System lokalisierte Komponenten stellt die Software grau dar, sofern deren Fehlen keinen Einfluss auf die Sicherheit des Gesamtsystems nach sich zieht.

Abbildung 1: Übersichtlich gruppiert zeigt Lynis im Terminal die Testergebnisse.

Abbildung 1: Übersichtlich gruppiert zeigt Lynis im Terminal die Testergebnisse.

Die einzelnen Tests unterteilen sich in Kategorien. Sofern Sie die Software mit Benutzerrechten starten, überspringt Lynis einige Prüfungen, die sich nur mit Root-Rechten ausführen lassen. Das Programm weist in einer entsprechenden Meldung auf die übersprungenen Testroutinen hin. Im Anschluss an die Prüfergebnisse weist die Software zudem einen Hardening-Index aus und zeigt Möglichkeiten zur Verbesserung auf. Dabei unterbreitet Lynis anhand der einzelnen Testkategorien Vorschläge, wie Sie problematische Einstellungen modifizieren, um die Sicherheit des Systems zu verbessern. Diese Tipps öffnen Sie über die angezeigten Verweise jeweils im Webbrowser (Abbildung 2).

Abbildung 2: Lynis liefert Verbesserungsvorschläge für die Konfiguration in Form von URLs (grau).

Abbildung 2: Lynis liefert Verbesserungsvorschläge für die Konfiguration in Form von URLs (grau).

Protokollführer

Lynis legt mehrere Protokolle an. Neben einer Profildatei, die das jeweilige Testszenario enthält, generiert es eine Log-Datei und einen Bericht. Die Suchpfade für die einzelnen Dateien zeigt die Anwendung nach dem Start der Tests an.

Der Report stellt die wichtigste dieser Dateien dar. Darin finden Sie nicht nur detailliert alle geladenen Kernel-Module, Daten zu den Netzwerkschnittstellen und die Verzeichnisstrukturen aufgelistet, sondern auch alle installierten Pakete, Cronjobs und die durchlaufenen Tests. Diese erscheinen dabei nicht wie in der Programmausgabe im Klartext, sondern mit ihren internen Bezeichnungen. Außerdem gibt das Tool genaue Angaben zu den vom Init-System geladenen Services aus.

Auch der Report enthält verschiedene Vorschläge, wie Sie das aktuelle System gegen Angriffe härten. Sie wirken jedoch im Bericht etwas unübersichtlich und unstrukturiert. Die einzelnen Anregungen stehen mit der Bezeichnung suggestion jeweils am Zeilenanfang.

Profile

Das Werkzeug erlaubt den Einsatz verschiedener Profile. Eine Liste aller vorhandenen Profile erhalten Sie mit lynis show profiles. Das voreingestellte Profil nutzt alle verfügbaren Optionen. Möchten Sie nur bestimmte Komponenten oder Dienste testen, legen Sie dazu ein zusätzliches Profil an. Hinsichtlich der Anzahl solcher Profile gibt es keine Beschränkungen.

Da die Profile aus einfachen Textdateien bestehen, lassen sie sich mit jedem beliebigen Texteditor verwalten. Achten Sie darauf, das ursprüngliche Profil nicht zu modifizieren. Um bei einem Testlauf ein bestimmtes Profil zu nutzen, geben Sie dessen Bezeichnung beim Aufruf von Lynis als Option mit an. Um einen Testlauf mit einem bestimmten Profil auszuführen, tippen Sie am Prompt lynis audit --profile Profil ein.

Bei der Bezeichnung neuer Profile, die Sie aus dem Default-Profil als Vorlage generieren, empfiehlt es sich, die jeweils zu testenden Komponenten im Namen zu berücksichtigen. Sie können beispielsweise spezifische Profile für verschiedene Installationen anlegen, aber auch unterschiedliche Server-Dienste wie Web- oder Mailserver in gesonderten Profilen zusammenfassen. Auch das Sicherheits-Level lässt sich in individuellen Profilen berücksichtigen.

Regelmäßig

Insbesondere im Unternehmensumfeld sollten Sie Sicherheitsscans regelmäßig ausführen. Ein Cronjob bietet die Möglichkeit, Lynis in fest definierten Intervallen auszuführen. Dazu offeriert die Anwendung den Aufrufparameter --cronjob, der für einen kompletten Scan des Systems sorgt. Dazu müssen Sie jedoch auch ein entsprechendes Skript generieren und die zugehörigen Pfade anlegen, um das Sichern des Berichts zu ermöglichen.

Der regelmäßige automatisierte Durchlauf der Tests verläuft zukünftig ohne Interaktionen mit dem Anwender. Außerdem entfernt die Software alle Sonderzeichen aus dem Report, womit er sich problemlos weiterverarbeiten lässt. Anwender der Enterprise-Variante haben zudem die Möglichkeit, mithilfe des Parameters --upload den Report an die eigene Lynis-Instanz zu senden, um Prüfungs- und Dokumentationszwecken zu genügen [5].

Farbgebung

Beim Ausführen von Lynis kommt es je nach gewählter Hintergrundfarbe vor, dass die Ausgaben auf der Konsole zu kontrastarm und damit schwer lesbar ausfallen. Um das zu vermeiden, starten Sie die Anwendung mithilfe des Parameters --reverse-colors. Damit passt das Werkzeug die Ausgabe an helle Terminalhintergründe an. Zusätzlich lässt sich auch die Farbgebung mit dem Parameter --no-colors komplett abschalten (Abbildung 3).

Abbildung 3: Lynis erlaubt es, die Farben der Textausgabe anzupassen.

Abbildung 3: Lynis erlaubt es, die Farben der Textausgabe anzupassen.

Problematisch

Die Berichte, die Lynis generiert, speichert es in der Grundeinstellung stets im Verzeichnis /var/log/ ab. Dabei entstehen die beiden Dateien lynis.log und lynis-report.dat. Sofern Sie die Prüfberichte zu Dokumentationszwecken über längere Zeiträume benötigen, empfiehlt es sich, sie sofort nach dem Testdurchlauf auf einen gesonderten Datenträger oder in ein anderes Verzeichnis zu kopieren. Ansonsten überschreibt Lynis bei jedem neuen Durchlauf die vorhandenen Protokolle ohne weitere Nachfrage.

Zusätze

Dank seines modularen Aufbaus lässt sich Lynis problemlos mit Plugins erweitern, die dazu dienen, weitere Daten zu den überprüften Systemen zu erhalten. Da die Prüfroutinen des Tools aus Shell-Skripten bestehen, besteht für versierte Administratoren die Möglichkeit, benötigte Plugins selbst zu schreiben. Die Entwickler stellen dazu eine ausführliche Anleitung bereit [6].

Sofern sie in einzelnen Profilen explizit aktiviert sind, arbeitet Lynis eingepflegte Plugins bei den Prüfungsläufen automatisiert ab. Sie finden diese Erweiterungen voreingestellt im Verzeichnis /usr/share/lynis/plugins/. Während eines Prüflaufs können Sie an zwei Stellen (den sogenannten Phasen) aufgerufen werden, wobei die Ergebnisse ebenfalls in der Standardausgabe und der Report-Datei erscheinen.

Der Hersteller Cisofy unterhält zudem eine Datenbank mit Plugins, die sich individuell herunterladen und in eine Lynis-Installation integrieren lassen. Für den Zugriff auf diese Erweiterungen müssen Sie sich jedoch beim Anbieter registrieren und Kunde der Enterprise-Variante sein.

Fazit

Lynis präsentiert sich als mächtiges Werkzeug zum Lokalisieren sicherheitsrelevanter Schwachstellen in Computersystemen. Die Community-Variante eignet sich dabei für ambitionierte Privatanwender und Admins mit einer überschaubaren Zahl von Rechnern, während sich die Enterprise-Version für größere Installationen empfiehlt. Sie wartet auch mit zusätzlichen Funktionen auf, etwa einem webbasierten Control Panel und Plugins, die beispielsweise auch das Prüfen der Integrität von Dateien erlauben. Mithilfe einer Erweiterung zum Pentesting eignet sich Lynis auch dazu, Angriffsszenarien durchzuspielen, wie sie in der Realität auftreten. Somit gehört die Software in den Werkzeugkasten jedes sicherheitsbewussten Anwenders. (tle)

Glossar

SaaS

Software as a Service. Lizenz- und Vertriebsmodell, bei dem der Anbieter eine Software auf der eigenen Infrastruktur betreibt und deren Nutzung per Abonnement anbietet.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 10/2022 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben