[[Vorlage(Archiviert, "Das Projekt wird scheinbar nicht mehr weiter entwickelt, die letzte Version des Programms datiert auf 2015."))]] {{{#!vorlage Wissen [:Packprogramme:Archive entpacken] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] [:Editor: Editor benutzen] }}} [[Inhaltsverzeichnis(1)]] [[Bild(Wiki/Icons/terminal.png, 48, align=left)]] [http://buck-security.sourceforge.net/download.html buck-security] {en} ist ein in [:Perl:] entwickelter Sicherheits-Scanner für Ubuntu und [debian:DebianGerman: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 [wikipedia_en:Tiger_%28security_software%29:Tiger] oder [wikipedia_en: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#Sonderrechte:]) * Überprüfung der Dateirechte für neu angelegte Dateien ([http://en.wikipedia.org/wiki/Umask umask] {en} ) * Überprüfung, ob das sticky-bit für das /tmp Verzeichnis gesetzt ist (siehe [:Rechte#Sonderrechte:]) * Suche nach Administrator-Accounts * Überprüfung, ob Firewall-Regeln aktiviert sind * Überprüfung der Konfiguration des [:SSH:]-Servers (falls installiert) * Suche nach lokalen [:Dienste:Diensten] * Suche nach installierten Paketen, die als Angriffsprogramme verwendet werden können (z.B. [:Portscan: Portscanner] oder Passwort-Cracker) * Anlegen und Überprüfung von [wikipedia:Prüfsumme:Prüfsummen] wichtiger Systemprogramme {{{#!vorlage Experten 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. }}} = Installation = Das Programm ist nicht in den offiziellen Paketquellen enthalten. Da es sich um ein Perl-Skript handelt, ist die manuelle Installation sehr einfach. == Manuell == Zuerst lädt man sich die aktuelle Version des Programms von der [https://github.com/davewood/buck-security Projektseite] {en} {dl} als Archivdatei (ZIP) herunter und entpackt [1] es in ein Verzeichnis eigener Wahl. [[Vorlage(Fremd, Software)]] = Bedienung = Anschließend kann buck-security im Terminal [2] gestartet werden. Dazu werden Root-Rechte [3] benötigt: {{{#!vorlage Befehl cd buck-security-master sudo ./buck-security [OPTION] }}} {{{#!vorlage Tabelle <-3 rowclass="titel">'''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 }}} == Konfiguration == 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. === Ausnahmen === 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. === Ausnahmen hinzufügen === 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 }}} === Wildcards bei Ausnahmen === Für alle Ausnahmen kann auch das `*`-Zeichen als [wikipedia:Wildcard_(Informatik): 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. {{{#!vorlage Warnung 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). }}} = Links = * [http://buck-security.sourceforge.net/download.html Projektseite] {en} - mit Dokumentation und FAQ * [github:davewood/buck-security:Quellcode] {en} * [http://www.admin-magazin.de/News/Security-Scanner-Buck-Security-fuer-Debian-und-Ubuntu-verbessert Security-Scanner Buck-Security für Debian und Ubuntu verbessert] {de} - admin-magazin.de, 06/2011 * [http://sourceforge.net/blog/linux-system-flaws-cant-pass-buck-security/ Linux system flaws can’t pass Buck Security] {en} - SourceForge-Blog, 04/2010 #tag: Sicherheit, Server