linux-suse-opensuse security compliance openscap audit sles

Compliance Auditing: OpenSCAP on SUSE (Artikel 179)

Implementierung von Compliance-Audits unter SUSE. Erfahren Sie alles über OpenSCAP, die Erstellung von Audit-Reports und das automatisierte Fixen von Sicherheitsmängeln.

# Compliance Auditing: Revisionssichere SUSE-Systeme mit OpenSCAP

TL;DR / Management Summary “Ist unser Server sicher?” ist keine Meinungsfrage, sondern eine Frage der Compliance. OpenSCAP ist das Werkzeug, um SUSE-Systeme gegen standardisierte Profile (z.B. PCI-DSS, HIPAA, BSI-Grundschutz) zu prüfen. Es scannt Konfigurationsdateien, Dateiberechtigungen und Patch-Stände und generiert einen detaillierten Bericht inklusive Lösungsvorschlägen. Ein Senior Admin nutzt OpenSCAP, um den Security-Status seiner Flotte objektiv nachzuweisen.


# 1. Einführung & Architektur

Was ist SCAP?

SCAP (Security Content Automation Protocol) ist ein Standard für Sicherheitsdaten.

  • OVAL: Sprache zur Beschreibung von Systemzuständen.
  • XCCDF: Sprache zum Erstellen von Checklisten.

# Der Audit-Workflow (Mermaid)

graph TD
    A[Security Policy: PCI-DSS / STIG] --> B[SCAP Security Guide]
    B --> C[Tool: oscap scanner]
    D[SLES Host] --> C
    C --> E[HTML Report: Pass/Fail]
    C --> F[Remediation Script: Ansible / Bash]
    F -->|Fixes| D

# 2. Installation & Profile

Den Scanner vorbereiten.

# Schritt 1: Pakete installieren

sudo zypper install openscap-utils scap-security-guide

# Schritt 2: Verfügbare Profile anzeigen

SUSE liefert Profile für verschiedene SLES-Versionen mit.

oscap info /usr/share/xml/scap/ssg/content/ssg-sle15-ds.xml

Suchen Sie nach Profilen wie pci-ds oder stig-sles15-disa.


# 3. Einen Scan durchführen

Die nackte Wahrheit.

# Scan starten und Bericht generieren

sudo oscap xccdf eval \
    --profile pci-dss \
    --results results.xml \
    --report report.html \
    /usr/share/xml/scap/ssg/content/ssg-sle15-ds.xml

Öffnen Sie die report.html im Browser. Rot markierte Punkte müssen behoben werden.


# 4. Day-2 Operations: Remediation

Fehler automatisch beheben.

OpenSCAP kann Skripte generieren, die das System wieder konform machen.

# Ansible-Fix generieren

oscap xccdf generate fix \
    --profile pci-dss \
    --fix-type ansible \
    --output fix_compliance.yml results.xml

Sie können dieses Playbook nun mit Ansible (Artikel 109) auf Ihre gesamte Flotte ausrollen.


# 5. Troubleshooting & “War Stories”

Wenn der Scan lügt oder hakt.

# Story 1: “Der False-Positive bei Patches”

Symptom: OpenSCAP meldet 50 fehlende Sicherheits-Updates, obwohl zypper patch sagt, das System sei aktuell. Ursache: Der SCAP-Content (ssg-sle15-ds.xml) ist veraltet und kennt die neuesten Patch-IDs von SUSE noch nicht. Lösung: Aktualisieren Sie das Paket scap-security-guide oder laden Sie den neuesten Content direkt vom ComplianceAsCode Projekt herunter.

# Story 2: “Systembruch durch Auto-Remediation”

Symptom: Nach dem Ausführen des Fix-Skripts startet der Webserver nicht mehr. Ursache: Das Profil forderte eine Deaktivierung von unsicheren Protokollen, die Ihre Applikation jedoch zwingend benötigt. Lösung: Führen Sie niemals ein generiertes Fix-Skript ungesehen aus. Testen Sie es erst in einer Staging-VM und passen Sie die Variablen im Playbook an Ihre Bedürfnisse an.


# 6. Fazit & Empfehlung

  • Regelmäßigkeit: Führen Sie Compliance-Scans wöchentlich via Cron oder SUSE Manager aus.
  • Transparenz: Nutzen Sie die HTML-Reports für Audits. Sie sind professionell formatiert und enthalten alle nötigen Referenzen zu den Standards.
  • Wahl: OpenSCAP ist der Industriestandard. Nutzen Sie keine proprietären Scanner, wenn Sie die volle Kontrolle über die Regeln haben wollen.

# Anhang: Cheatsheet

Aufgabe Befehl
Info zum Content oscap info <xml_file>
Scan ohne Report oscap xccdf eval --profile <id> <xml>
Report aus XML bauen oscap xccdf generate report results.xml > report.html
Bash-Fix generieren oscap xccdf generate fix --fix-type bash ...
Hilfe anzeigen oscap --help
CVE Scan (Patch-Level) oscap oval eval --results res.xml <suse-cve-file.xml>