BSI Open Source Software Security Suite (BOSS)

Ordnungsmerkmale

erschienen in: <kes> 2005#4, Seite 24

Rubrik: BSI Forum

Schlagwort: Security-Scanner

Zusammenfassung: Anfang diesen Jahres wurde die Entwicklung der BSI Open Source Software Security Suite (BOSS) fertiggestellt. Mit BOSS sollte ein Werkzeug mit einer einfach bedienbaren Oberfläche geschaffen werden, das netzwerkweite sowie lokale Sicherheitsscans zentral gesteuert durchführen kann.

Autor: Von Wilhelm Merx, BSI, und Lukas Grunwald, DN-Systems

Durch BSI Open Source Software Security Suite (BOSS) ist es jedem Netzwerkverantwortlichen einfach möglich, Audits und Monitoring der Sicherheit eines Rechner-Netzwerks sowie eine Überwachung von Security Service Level Agreements (SLA) durchzuführen. Das Software-Paket basiert auf dem Security-Scanner NESSUS. Dieser ist dabei bezüglich seiner Architektur und der grafischen Bedienoberfläche weiterentwickelt worden, da BOSS weitergehende Anforderungen zu erfüllen hatte.

Sowohl BOSS als auch die benutzten NESSUS-Komponenten stehen unter der GNU Public Licence (GPL), was bedeutet, dass hier nur freie Software eingesetzt worden ist. Die Erweiterungen sind ebenfalls wieder unter der GPL lizensiert und in das ursprüngliche NESSUS Projekt eingeflossen. Die GPL erlaubt die freie Nutzung und die Weiterentwicklung der Software ohne jegliche Beschränkungen. Die Weitergabe im Quelltext ist gestattet, wenn das Ergebnis wieder unter der GPL veröffentlicht wird.

[Illustration]
BOSS im Netwerk einer Organisation

BOSS ist aber weit mehr als ein weiterentwickelter NESSUS: Erstmalig kann auch eine Sicherheitsorganisation damit abgebildet werden. Hierfür ist der NESSUS-Scanner soweit erweitert worden, dass nun auch das Erfassen von IT-Grundschutzhandbuch- (GSHB) und IT-Infrastructure-Library-(ITIL-)Prozessen wie Security Change, Historie und Qualität des Sicherheits-Monitorings möglich sind.

Dazu ist ein neues Sub-System entwickelt worden, der Security Local Audit Daemon (SLAD), welches für lokale Audits und Überwachungen auf Rechnern unter einem Linux-/Unix-artigen Betriebssystem läuft und entweder über eine Kalenderfunktion in bestimmten Intervallen Sicherheitsüberwachungen zeitgesteuert auf dem Host durchführen kann oder über die BOSS-Konsole diesen Test über ein NESSUS-Plug-in zeitnah starten kann.

Sobald SLAD einen Auftrag bekommt, werden lokale Tests wie Intrusion Detection, Passwort-Sicherheitstests oder auch ein Prüf-Tool zum Check lokaler Dienste- und Rechteeinstellungen, ein Integritäts-Checker, welcher so genannte Rootkits aufspürt, oder ein Viren-Scanner angestoßen. Die Ergebnisse werden dann mit einer automatischen Vorbewertung an die BOSS-Konsole zurückgeliefert. Der NESSUS-Server, für dessen Ansteuerung die BOSS-Konsole unter (32Bit-)Windows oder Linux zur Verfügung steht, steuert dabei den gesamten Vorgang.

----------Anfang Textkasten----------

Vom Passwort-Cracker zum Passwort-Checker

Gewiss mag so manch einer denken, dass der Funktionsumfang von BOSS sich auch mit den freien Tools selbst realisieren ließe – dies ist aber nur teilweise richtig. Bei der Entwicklung von Sicherheitswerkzeugen muss immer darauf geachtet werden, dass keine unveränderten Hacker-Tools zum Einsatz kommen, mit denen auch Unheil auf dem Server angerichtet werden kann. Da Hacker-Tools im Allgemeinen nach der Sicherheitsprüfung auf dem Server belassen werden, sind diese auch leicht von Angreifern nutzbar.

Der Passwort-Cracker John-the-Ripper gibt beispielsweise ein Passwort aus, nachdem er dieses mittels Regelwerk und Wörterliste erraten hat. Damit ist es zwar ein brauchbares Cracker-Tool, kann aber nicht im produktiven Sicherheitsbetrieb eingesetzt werden, da sonst jeder berechtigte Nutzer des Passwort-Crackers auf dem Server mittels dieser Komponente besonders die unsicheren Passwörter seiner Kollegen schnell knacken kann, um zum Beispiel unter fremder Identität, ohne dass dies protokolliert wird, Schaden anzurichten. Ein Innentäter oder Angreifer von außen findet damit sein Handwerkszeug schon fertig installiert auf dem Server vor.

Für BOSS ist John-the-Ripper daher im Quelltext so beschnitten worden, dass erkannte Passwörter nicht mehr ausgegeben, sondern nur das Benutzerkonto genannt wird, das ein unsicheres Passwort hat.

----------Ende Textkasten----------

Für BOSS musste die als Grundlage dienende freie Software zum Teil angepasst werden, um unter anderem Hacking-Funktionen zu unterbinden. Da durch BOSS lediglich Namen der Konten von Nutzern mit schwachen Passworten ausgegeben werden, ist es somit unproblematisch diese Informationen im Rahmen eines Security-Changes und eines "Quality of Security Monitoring" zu erfassen.

Um die Kommunikation zwischen dem NESSUS-Server und dem Secure Local Auditing Daemon (SLAD) zu schützen, werden die Scan-Jobs über eine Secure-Shell-Verbindung (SSH) zu einem unprivilegierten Benutzer in ein Spool-Verzeichnis abgelegt. Dort darf der NESSUS-Server nur schreiben. Das Ergebnis holt er sich wiederum aus einem anderem Verzeichnis ab, aus dem er nur lesen darf. Mehr Rechte bekommt der NESSUS-Server nicht. Der SLAD hingegen muss in der Lage sein auf alle Dateien zuzugreifen, die er überprüfen soll. Dabei steuert SLAD die einzelnen Komponenten beziehungsweise Programme und legt die Ausgaben für den NESSUS-Server bereit.

Der Server oder auch ein Arbeitsplatzrechner unter Linux kann somit von einem zentralen Verwaltungsarbeitsplatz im Netz aus intensiven Pürfungen, sowohl mit dem NESSUS-Scanner von außen, als auch von innen über den SLAD, unterzogen werden. Dadurch sind Sicherheits-Checks mit einem hostbasierten Intrusion-Detection-System (Tripwire), der lokalen Berechtigungen und der UNIX-/Linux-Systemkonfiguration (Tiger), der Integrität (Check-Root-Kit), des Viren-Schutzes (ClamAV) sowie der Passwortqualität der Rollen und der Benutzer (John-the-Ripper BOSS-Variante) möglich. Der NESSUS-Scanner kann dabei auch bekannte Netzwerk-Schwachstellen testen und mit lokalen Sicherheitsprüfungen zum Beispiel den Stand von aktuellen Security-Patch-Levels überwachen.

[Illustration]
Host-basierte Prüfungen mittels SLAD versus Netzwerk-Scans

Ergänzende BOSS-Features

Von der Netzwerkseite her wird mit NESSUS der Scan durchgeführt und nach bekannten Schwachstellen, die sich via IP-Netzwerk herausfinden lassen, gesucht. Als weitere BOSS-Komponente ist noch ein IKE-Scan in das Nesssus-Projekt integriert worden, um die Sicherheit von IPSec prüfen zu können.

Wichtige Neuerungen gibt es aber auch bei dem NESSUS-GUI: So ist das neue NESSUS/BOSS-GUI internationalisiert worden und in den Sprachen Englisch und Deutsch verfügbar. Es lässt sich aber auch leicht in jede andere Sprache übersetzen, da das neue GUI sich an den i18N-Standard der Free Software Foundation hält.

Auch wird eine Historie von durchgeführten Überprüfungen bewahrt, mit der man Security Changes nachweisen kann. Es ist möglich sich mit einer BOSS-Konsole an mehr als einen NESSUS-Server zu binden. Dies ermöglicht beispielsweise auch die Abbildung einer komplexen Netzwerkstruktur durch ausgewählte Platzierung mehrerer NESSUS-Server, wie es typischerweise in großen Behörden und Unternehmen der Fall ist.

BOSS ermöglicht es zudem alle Prüfergebnisse auszulagern: Ein PDF-Report, sowie die Möglichkeit in ASCII, XML und HTML zu exportieren, erleichtern die dauerhafte Speicherung unter Umgehung von proprietären Formaten.

Zugriffsrechte

Durch das in NESSUS enthaltene Sicherheitsmodell ist es möglich, dass ein Berechtigungskonzept so angelegt wird, dass Beschränkungen nutzerbezogen aktiv werden. So kann ein Revisor oder Administrator beispielsweise berechtigt sein nur eine bestimmte Abteilung zu scannen, nicht aber alle anderen, für die er keine Verantwortung besitzt. Durch eine geschickte SSH-Schlüsselverteilung können auch die Zugriffsberechtigungen auf verschiedene SLAD-Rechner im Netz unterschiedlichen Personen aufgabenbezogen zugeordnet werden.

Die Scan-Ergebnisse werden nicht zentral auf dem Server abgelegt, sondern auf dem BOSS-Client, von dem aus der Sicherheits-Scan initiiert worden ist. Auf diesem ist zur Absicherung der gespeicherten Prüfergebnisse eine zusätzliche Filesystem-Verschlüsselung anzuraten. Ein Softwaremodul zur Verschlüsselung des Dateisystems ist im Allgemeinen bei den von BOSS clientseitig unterstützten Betriebssystemen enthalten, muss aber explizit vor Nutzung eingerichtet werden. Als Ablage und Nachweis der Prüfergebnisse bietet sich ein ASCII-, PDF- oder XML-/HTML-Export auf ein magnetooptisches Medium an, welches sicher aufbewahrt werden sollte.

Fazit

BOSS kann als Komponente im Sicherheitskonzept auf Schwachstellen prüfen oder auch Security-Changes dokumentieren. Ein aktives Eingreifen wie es ein Intrusion Prevention System (IPS) durchführt, kann BOSS aber nicht leisten. Ein aktives Verhalten birgt im Produktivbetrieb zu große Risiken, auch angesichts der vielen verschiedenen Prüfbereiche. BOSS wird daher immer nur passiv arbeiten und automatisierte Prüfungen durchführen. Das Schließen der gefundenen Schwachstellen sollte über Service-Level-Verträge (SLAs) vom Betreiber oder in Sicherheitskonzepten der IT-Abteilung geregelt sein. Die Überwachung der Sicherheit im Netz und auf lokalen Rechnern kann BOSS dagegen sehr gut leisten. BOSS kann hierbei nur durch weiterführende Informationen zu den erkannten Sicherheitsproblemen bei deren Behebung helfen.

Weitere Informationen zu BOSS finden Sie unter [externer Link] www.bsi.bund.de/produkte/boss/index.htm.