Home » Learning Center » Task: OVAL SC 

Task: OVAL SC

OVAL steht für Open Vulnerability and Assessment Language. Es ist ein Ansatz für standardisierte Beschreibung des (Sicherheits-)status eines IT-Systems. OVAL-Dateien beschreiben ein Sicherheitsproblem und definieren Tests um den verletzbaren Zustand eines Systems zu identifizieren. Sie wissen in welchem Zustand das Problem behoben ist. Oft bezieht sich das auf die Versionsnummern bestimmter Softwareprodukte.

Um gemäß einer OVAL-Beschreibung zu prüfen benötigt man also Informationen über den Systemzustand. Dieser wird in einer ebenfalls als XML standardisierten Form erhoben, der System Characteristics (SC).

Es gibt verschiedene Lösungen, die auf Basis von OVAL-Dateien und SC-Dateien Prüfungen durchführen. OVAL-Dateien werden von verschiedenen Herstellern zur Verfügung gestellt. MITRE pflegt das OVAL Repository mit über 10.000 Einträgen.

OVAL Adoption Program

top^
Greenbone ist offzieller OVAL Adopter und Greenbone Security Manager registriert als "Systems Characteristics Producer".

Siehe dazu: OVAL Adoption Program

Unterstützt werden die OVAL Versionen 5.3 bis 5.9. Sollten bei der Verwendung fehlerhafte, fehlende oder unvollständige OVAL-Elemente gefunden werden, so bitten wir um Rückmeldung über unseren Support. Die OVAL-SC Realisierung bei Greenbone erlaubt es, innerhalb eines Tages Updates für OVAL-SC zu aktivieren und damit zeitnah jegliche Verbesserungen für den Anwender bereitzustellen.

Scan-Daten als OVAL-SCs einsammeln

top^

Während eines Scans sichtet der Greenbone Security Manager zahlreiche Informationen über die angegebenen Zielsysteme. Diese Informationen werden in einem eigenen, optimierten Daten-Pool verwaltet. Teile davon eignen sich aber auch direkt als Bestandteil von OVAL System Chracteristics.

Die Erstellung von OVAL-SC Dateien ist nicht voreingestellt sondern muss in der Scan Configuration eingeschaltet werden. Die folgende Scan Configuration konzentriert sich genau auf diese Aufgabe: collect-oval-sc.xml

Importieren Sie diese in den GSM:

Die neue Scan Configuration wird anschliessend in der Liste angezeigt:

Die umfassendsten Ergebnisse zu den Zielsystemen werden über authentifizierte Scans ermittelt. Dafür muss zunächst ein Zugangskonto für das Zielsystem eingerichtet werden. Sorgen Sie dafür, dass das Konto auf dem Zielsystem entsprechend eingerichtet ist. Für unixoide Systeme reicht in der Regel ein niedrig privilegierter Zugang, bei Windows-Systemen sind zumeist Administrator-Rechte notwendig.

Das folgende Beispiel zeigt die Einrichtung eine Ziels mit Linux. Für ein Windows-System sollte das Credential bei SMB anstatt bei SSH gesetzt werden.

Nun wird der Task eingerichtet. Starten Sie ihn unmittelbar danach.

Der Scan-Vorgang ist sehr schnell (für dieses Beispiel mit nur einem Zielsystem 1 Sekunde), da mit der speziellen Scan Configuration zielgerichtet die Informationen eingesammelt werden.

Die Ergebnisse werden als Log-Information abgelegt. Stellen Sie den Filter entsprechend ein, so sehen die OVAL System Characteristics in für Lesbarkeit formatiertem XML:

Bitte beachten: Haben Sie die Daten von vielen Zielsystemen gesammelt, so kann das den technischen Rahmen für die Ansicht sprengen.

OVAL-SC exportieren

top^

OVAL-SC's sind so definiert, dass sich eine Beschreibungs-Datei auch nur genau auf ein System bezieht. Mit Greenbone können aber beliebig viele System Characteristics zu verschiedenen Systemen in einem einzelnen Schritt gesammelt werden.

Wir stellen daher zwei Report Plugins zur Verfügung:

  • OVAL-SC.xml (ab GSM 1.4 verwendbar): Für eine einzelne System Characteristics Datei die dann als XML geliefert wird.

  • OVAL-SC-archive.xml (ab GSM 1.5 verwendbar): Für eine beliebige Anzahl von Systeme Characteristics Dateien die in einer Zip-Datei zusammengefasst sind. Jede einzelne SC-Datei wird nach der IP-Adresse des jeweiligen Systems benannt.

Importieren Sie diese Report Format Plugins, prüfen Sie die Signaturen und aktivieren Sie sie schließlich. Wie das im Detail geht, kann man hier nachlesen: Feature: Report Formats

Nun können Sie die Ergebnisse in für die weitere Verwendung geeigneter Form direkt herunterladen. Wählen Sie dafür das Report Format "OVAL-SC" oder "OVAL-SC Archive" bei "Full report" aus:

Die Zip-Archive sehen wir folgt aus:

Beispiel: OVAL-SC für ovaldi verwenden

top^

Die Organisation MITRE stellt nicht nur OVAL zur Verfügung sondern auch eine Referenzimplementierung für die lokale Ausführung von OVAL-Tests. Der OVAL Interpreter ovaldi ist unter einer Open Source Lizenz verfügbar.

Greenbone macht es über die Bereitstellung von OVAL System Characteristics möglich, dass ein ovaldi-Aufruf beispielsweise auf einen Linux-System läuft, aber ein Windows-System prüft. Umgekehrt ist es das natürlich genauso möglich.

War das im obigen Beispiel gescannte Zielsystem ein Debian Linux System, kann man nun die offiziellen Debian OVAL definitions 2010 herunterladen und den Test ausführen ("false" bedeutet, dass ein Test keinen Befund hatte).

Ovaldi erstellt automatisch zur folgenden Ausgabe auch eine HTML- und eine XML-Version: oval-sc-debian-lenny-sample-ovaldi-results.html (110 KByte) und oval-sc-debian-lenny-sample-ovaldi-results.xml (4,4 MByte).

$ cd /tmp
$ ovaldi -m -o /tmp/oval-definitions-2010.xml \
    -i /tmp/oval-sc-debian-lenny-sample.xml \
    -a /usr/share/ovaldi/xml/

----------------------------------------------------
OVAL Definition Interpreter
Version: 5.9 Build: 1
Build date: Mar 10 2011 15:21:36
Copyright (c) 2002-2011 - The MITRE Corporation
----------------------------------------------------

Start Time: Tue Mar 22 11:50:00 2011

 ** parsing /tmp/oval-definitions-2010.xml file.
    - validating xml schema.
 ** checking schema version
     - Schema version - 5.3
 ** skipping Schematron validation
 ** parsing /tmp/oval-sc-debian-lenny-sample.xml for analysis.
    - validating xml schema.
 ** running the OVAL Definition analysis.
      Analyzing definition:  FINISHED
 ** applying directives to OVAL results.
 ** OVAL definition results.

    OVAL Id                                 Result
    -------------------------------------------------------
    oval:org.debian:def:1965                false
    oval:org.debian:def:1966                false
    oval:org.debian:def:1967                false
    oval:org.debian:def:1968                false
    oval:org.debian:def:1969                false
    oval:org.debian:def:1970                false
    oval:org.debian:def:1971                false
    oval:org.debian:def:1972                false
    oval:org.debian:def:1973                false
    oval:org.debian:def:1974                false
    oval:org.debian:def:1976                false
    oval:org.debian:def:1977                false
    oval:org.debian:def:1978                false
    oval:org.debian:def:1979                false
    oval:org.debian:def:1980                false
    oval:org.debian:def:1981                false
    oval:org.debian:def:1982                false
    oval:org.debian:def:1983                false
    oval:org.debian:def:1984                false
    oval:org.debian:def:1985                false
    oval:org.debian:def:1986                false
    oval:org.debian:def:1987                false
    oval:org.debian:def:1988                false
    oval:org.debian:def:1989                false
    oval:org.debian:def:1990                false
    oval:org.debian:def:1991                false
    oval:org.debian:def:1992                false
    oval:org.debian:def:1993                false
    oval:org.debian:def:1994                false
    oval:org.debian:def:1995                false
    oval:org.debian:def:1996                false
    oval:org.debian:def:1997                false
    oval:org.debian:def:1998                false
    oval:org.debian:def:1999                false
    oval:org.debian:def:2000                false
    oval:org.debian:def:2001                false
    oval:org.debian:def:2002                false
    oval:org.debian:def:2003                false
    oval:org.debian:def:2004                false
    oval:org.debian:def:2005                false
    oval:org.debian:def:2007                false
    oval:org.debian:def:2008                false
    oval:org.debian:def:2009                false
    oval:org.debian:def:2010                false
    oval:org.debian:def:2011                false
    oval:org.debian:def:2012                false
    oval:org.debian:def:2013                false
    oval:org.debian:def:2014                false
    oval:org.debian:def:2015                false
    oval:org.debian:def:2016                false
    oval:org.debian:def:2017                false
    oval:org.debian:def:2018                false
    oval:org.debian:def:2019                false
    oval:org.debian:def:2020                false
    oval:org.debian:def:2021                false
    oval:org.debian:def:2022                false
    oval:org.debian:def:2023                false
    oval:org.debian:def:2024                false
    oval:org.debian:def:2025                false
    oval:org.debian:def:2026                false
    oval:org.debian:def:2027                false
    oval:org.debian:def:2028                false
    oval:org.debian:def:2029                false
    oval:org.debian:def:2030                false
    oval:org.debian:def:2031                false
    oval:org.debian:def:2032                false
    oval:org.debian:def:2033                false
    oval:org.debian:def:2034                false
    oval:org.debian:def:2035                false
    oval:org.debian:def:2036                false
    oval:org.debian:def:2037                false
    oval:org.debian:def:2038                false
    oval:org.debian:def:2039                false
    oval:org.debian:def:2040                false
    oval:org.debian:def:2041                false
    oval:org.debian:def:2042                false
    oval:org.debian:def:2043                false
    oval:org.debian:def:2044                false
    oval:org.debian:def:2045                false
    oval:org.debian:def:2046                false
    oval:org.debian:def:2047                false
    oval:org.debian:def:2048                false
    oval:org.debian:def:2049                false
    oval:org.debian:def:2050                false
    oval:org.debian:def:2051                false
    oval:org.debian:def:2052                false
    oval:org.debian:def:2053                false
    oval:org.debian:def:2054                false
    oval:org.debian:def:2055                false
    oval:org.debian:def:2056                false
    oval:org.debian:def:2057                false
    oval:org.debian:def:2058                false
    oval:org.debian:def:2059                false
    oval:org.debian:def:2060                false
    oval:org.debian:def:2061                false
    oval:org.debian:def:2062                false
    oval:org.debian:def:2063                false
    oval:org.debian:def:2064                false
    oval:org.debian:def:2065                false
    oval:org.debian:def:2066                false
    oval:org.debian:def:2067                false
    oval:org.debian:def:2068                false
    oval:org.debian:def:2069                false
    oval:org.debian:def:2070                false
    oval:org.debian:def:2071                false
    oval:org.debian:def:2072                false
    oval:org.debian:def:2073                false
    oval:org.debian:def:2074                false
    oval:org.debian:def:2075                false
    oval:org.debian:def:2076                false
    oval:org.debian:def:2077                false
    oval:org.debian:def:2078                false
    oval:org.debian:def:2079                false
    oval:org.debian:def:2080                false
    oval:org.debian:def:2081                false
    oval:org.debian:def:2082                false
    oval:org.debian:def:2083                false
    oval:org.debian:def:2084                false
    oval:org.debian:def:2085                false
    oval:org.debian:def:2086                false
    oval:org.debian:def:2087                false
    oval:org.debian:def:2088                false
    oval:org.debian:def:2089                false
    oval:org.debian:def:2090                false
    oval:org.debian:def:2091                false
    oval:org.debian:def:2092                false
    oval:org.debian:def:2093                false
    oval:org.debian:def:2094                false
    oval:org.debian:def:2095                false
    oval:org.debian:def:2096                false
    oval:org.debian:def:2097                false
    oval:org.debian:def:2098                false
    oval:org.debian:def:2099                false
    oval:org.debian:def:2100                false
    oval:org.debian:def:2101                false
    oval:org.debian:def:2102                false
    oval:org.debian:def:2103                false
    oval:org.debian:def:2104                false
    oval:org.debian:def:2105                false
    oval:org.debian:def:2106                false
    oval:org.debian:def:2107                false
    oval:org.debian:def:2108                false
    oval:org.debian:def:2109                false
    oval:org.debian:def:2110                false
    oval:org.debian:def:2111                false
    oval:org.debian:def:2112                false
    oval:org.debian:def:2113                false
    oval:org.debian:def:2114                false
    oval:org.debian:def:2115                false
    oval:org.debian:def:2116                false
    oval:org.debian:def:2117                false
    oval:org.debian:def:2118                false
    oval:org.debian:def:2119                false
    oval:org.debian:def:2120                false
    oval:org.debian:def:2121                false
    oval:org.debian:def:2122                false
    oval:org.debian:def:2123                false
    oval:org.debian:def:2124                false
    oval:org.debian:def:2125                false
    oval:org.debian:def:2126                false
    oval:org.debian:def:2127                false
    oval:org.debian:def:2128                false
    oval:org.debian:def:2129                false
    oval:org.debian:def:2130                false
    oval:org.debian:def:2131                false
    oval:org.debian:def:2132                false
    oval:org.debian:def:2133                false
    -------------------------------------------------------


 ** finished evaluating OVAL definitions.

 ** saving OVAL results to results.xml.
 ** running OVAL Results xsl: /usr/share/ovaldi/xml//results_to_html.xsl.

----------------------------------------------------