CIS-Härtung (sec-hardening)

Prüft das System gegen CIS-Benchmark-Empfehlungen: Sudo-Konfiguration, Kernel-Parameter, PAM, Audit-Logging, Festplattenverschlüsselung und mehr.

Konfiguration

ParameterTypDefaultBeschreibung
enabledbooltrueModul aktivieren/deaktivieren
Linux-Prüfungen
check_sudobooltrueSudoers auf NOPASSWD prüfen
check_sysctlbooltrueKernel-Parameter gegen Soll-Werte prüfen
check_pambooltruePAM-Passwortqualität prüfen
check_auditdbooltrueAudit-Daemon-Status prüfen
check_reposbooltruePaketquellen prüfen
check_luksbooltrueFestplattenverschlüsselung prüfen
allowed_nopasswd_userslist["root"]Erlaubte NOPASSWD-Benutzer
expected_sysctldictsiehe untenErwartete sysctl-Werte
pam_minlenint8Minimale Passwortlänge (pam_pwquality)
trusted_sourceslist[]Vertrauenswürdige Paketquellen
Windows-Prüfungen
check_password_policybooltruePasswortrichtlinie prüfen
check_audit_policybooltrueAudit-Policy prüfen
check_bitlockerbooltrueBitLocker-Verschlüsselung prüfen
check_uacbooltrueUser Account Control prüfen
check_smb1booltrueSMBv1-Protokoll prüfen
check_rdp_nlabooltrueRDP Network Level Authentication prüfen
check_driversbooltrueTreiber-Signaturen prüfen
check_winrmbooltrueWinRM-Verschlüsselung prüfen
min_password_lengthint8Minimale Passwortlänge

Standard-sysctl-Werte

expected_sysctl:
  net.ipv4.ip_forward: "0"
  net.ipv4.conf.all.accept_redirects: "0"
  net.ipv4.tcp_syncookies: "1"
  net.ipv4.conf.all.send_redirects: "0"

YAML-Beispiel

sec_hardening:
  enabled: true
  check_sudo: true
  check_sysctl: true
  expected_sysctl:
    net.ipv4.ip_forward: "0"
    net.ipv4.tcp_syncookies: "1"
  pam_minlen: 12
  check_bitlocker: true
  min_password_length: 12

Diagnose-Codes

Linux

CodeSeverityBedeutungEmpfehlung
74000Hardening-Baseline eingehalten
74011NOPASSWD in sudoersNOPASSWD entfernen oder Benutzer explizit erlauben
74021sudoers-Berechtigungen zu offenchmod 0440 /etc/sudoers
74031Kernel-Parameter weicht absysctl-Wert anpassen
74041Keine/schwache Passwortqualitätpam_pwquality konfigurieren
74051auditd nicht aktivsystemctl enable --now auditd
74061auditd ohne Audit-RegelnAudit-Regeln konfigurieren
74071Unbekannte PaketquelleQuelle prüfen oder zu trusted_sources hinzufügen
74081Keine LUKS-VerschlüsselungFestplattenverschlüsselung einrichten

Windows

CodeSeverityBedeutungEmpfehlung
84000Hardening-Baseline eingehalten
84011Passwort-Mindestlänge zu kurzPasswortrichtlinie verschärfen
84021Keine Kontosperrung konfiguriertSperrrichtlinie aktivieren
84031Passwort-Alter nicht begrenztMaximales Passwortalter setzen
84041Audit-Unterkategorie nicht aktiviertAudit-Policy aktivieren
84051Laufwerk nicht mit BitLocker verschlüsseltBitLocker aktivieren
84061BitLocker-Schutz pausiertSchutz fortsetzen
84072UAC deaktiviertUAC aktivieren (EnableLUA = 1)
84081UAC auf niedrigstem LevelConsentPromptBehaviorAdmin erhöhen
84091RDP ohne NLANLA aktivieren
84101SMBv1 aktiviertSMBv1 deaktivieren
84111Unsignierter TreiberTreiber verifizieren oder ersetzen
84121WinRM erlaubt unverschlüsseltVerschlüsselung erzwingen

Plattform-Unterstützung

  • Linux: Prüft sudoers, sysctl, PAM, auditd, APT/YUM-Repos, LUKS.
  • Windows: Prüft Passwort-/Sperr-/Audit-Policies, BitLocker, UAC, SMB, RDP, WinRM, Treiber.