Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
buck-security ist ein in Perl entwickelter Sicherheits-Scanner für Ubuntu und Debian, der einen schnellen Überblick über die Sicherheit eines Systems ermöglicht. buck-security wurde ursprünglich für Server entwickelt, kann aber auch auf Desktop-Systemen eingesetzt werden. Es existiert allerdings keine grafische Oberfläche.
Im Gegensatz zu anderen Sicherheits-Scannern wie Tiger oder Lynis beschränkt sich buck-security auf einige wenige Sicherheitstests und nimmt deshalb für sich in Anspruch, auch für normale Anwender hilfreich zu sein.
Folgende Tests sind momentan in buck-security integriert:
Suche nach Dateien und Verzeichnissen, für die alle Benutzer Schreibrechte haben (worldwriteable)
Suche nach Programmen mit Setuid und Setgid (siehe Rechte)
Überprüfung der Dateirechte für neu angelegte Dateien (umask )
Überprüfung, ob das sticky-bit für das /tmp Verzeichnis gesetzt ist (siehe Rechte)
Suche nach Administrator-Accounts
Überprüfung, ob Firewall-Regeln aktiviert sind
Überprüfung der Konfiguration des SSH-Servers (falls installiert)
Suche nach lokalen Diensten
Suche nach installierten Paketen, die als Angriffsprogramme verwendet werden können (z.B. Portscanner oder Passwort-Cracker)
Anlegen und Überprüfung von Prüfsummen wichtiger Systemprogramme
Alleine durch die Benutzung von buck-security kann die umfassende Sicherheit eines Systems nicht gewährleistet werden. Vielmehr sollte es nur ein Baustein in einem umfassenden Sicherheitskonzept (siehe auch Sicherheits 1x1) sein. Dazu können auch weitere Werkzeuge wie rkhunter oder chkrootkit zählen.
Das Programm ist nicht in den offiziellen Paketquellen enthalten. Da es sich um ein Perl-Skript handelt, ist die manuelle Installation sehr einfach.
Zuerst lädt man sich die aktuelle Version des Programms von der Projektseite als Archivdatei (ZIP oder TAR.GZ) herunter und entpackt [1] es in ein Verzeichnis eigener Wahl.
Fremdsoftware kann das System gefährden.
Anschließend kann buck-security im Terminal [2] gestartet werden. Dazu werden Root-Rechte [3] benötigt:
cd buck-security_0.7 sudo ./buck-security [OPTION]
Optionen (Auswahl) | ||
--help | Hilfe anzeigen | |
--log | Ausgabe wird auch in ein Protokoll geschrieben | |
--make-checksums | erstellt neue Prüfsummen wichtiger Systemdateien | |
--output=1 | gekürzte Ergebnis-Ausgabe, nur Test-Ergebnisse | |
--output=2 | normale Ergebnis-Ausgabe, mit Informationen zu den Test-Ergebnissen | |
--output=3 | wie normale Ergebnis-Ausgabe, zeigt aber auch Fehlermeldungen an |
Die Konfigurationdateien von buck-security befinden sich im Verzeichnis conf. Die Hauptkonfigurationsdatei ist buck-security.conf. Diese Textdatei kann man mit einem Editor öffnen und bearbeiten [4]. Hier können die durchzuführenden Tests festgelegt werden, außerdem Einstellungen zur Erstellung der Prüfsummen sowie zu den zu suchenden Angriffsprogrammen.
Im Ordner conf/whitelists findet sich für jeden Test eine Konfigurationsdatei, in der Ausnahmen für diesen Test hinzugefügt werden können. Standardmäßig sind auch schon einige Ausnahmen eingetragen, um ungerechtfertigte Warnungen des Programms zu verhindern.
So ist beispielsweise für den Test, der nach Administratoren-Accounts sucht, in der zugehörigen Ausnahmedatei superusers-whitelist.conf, bereits root
eingetragen.
Möchte man nun selbst Ausnahmen hinzufügen, so kann man dies in der entsprechenden Konfigurationsdatei im Ordner conf/whitelist machen. So kann man beispielsweise weitere Setgid-Programme in sgids-whitelist.conf eintragen, z.B.:
/usr/sbin/postqueue /usr/sbin/postdrop
Die Ausnahmen sind dabei immer identisch mit der Ausgabe des Programms. Um beispielsweise SSH als Ausnahme für den Test, der nach lokalen Diensten sucht, hinzuzufügen, trägt man unter conf/whitelists/services-whitelist.conf ein:
22:sshd:LISTEN_ALL
Für alle Ausnahmen kann auch das *
-Zeichen als Wildcard verwendet werden. So führt der Eintrag:
/usr/sbin/*
in der Konfigurationsdatei für die Suche nach Setgid-Programmen z.B. dazu, dass dieser Test bei keinen Programmen in /usr/sbin/ Alarm schlägt.
Ausnahmen im Allgemeinen und Wildcards im Besonderen sollten deshalb nur äußerst sorgfältig eingesetzt werden. Also wirklich nur dann, wenn man sich sicher ist, dass es sich um einen falschen Alarm handelt, d.h. dieser Alarm nicht zu verhindern ist (weil z.B. das Programm das Setgid-Bit benötigt oder gewisse Dienste laufen dürfen).
Projektseite - mit Dokumentation und FAQ
Security-Scanner Buck-Security für Debian und Ubuntu verbessert - admin-magazin.de, 06/2011
Linux system flaws can’t pass Buck Security - SourceForge-Blog, 04/2010
Diese Revision wurde am 27. Dezember 2016 10:47 von aasche erstellt.