PKCS#12 / PFX Keystore-Integrationsleitfaden

Übersicht

Diese Anleitung konfiguriert den CBOM Secure Discover_Keystore-Sensor zur Erkennung von PKCS#12-Keystores (.p12, .pfx) – passwortgeschützten Containern, die einen privaten Schlüssel zusammen mit der zugehörigen Zertifikatskette enthalten. Der Sensor scannt die konfigurierten Pfade schreibgeschützt und extrahiert die Zertifikatsnamen (Subject/Issuer DNs), Seriennummer und Gültigkeitsdauer, Algorithmus und Größe des öffentlichen Schlüssels, Signaturalgorithmus, SANs, Schlüsselverwendung und Fingerabdrücke. Er liest, speichert oder überträgt niemals private Schlüsseldaten.

Voraussetzungen:

  • Zugriff auf die CBOM-Plattform und der Discover_Keystore-Agent, der auf dem/den Host(s) mit den .p12/.pfx-Dateien installiert ist.
  • Mindestens eine .p12- oder .pfx-Datei in den Zielverzeichnissen.
  • Das Speicherpasswort für jeden Schlüsselspeicher, den der Sensor öffnet (wird als Geheimnis übermittelt und niemals protokolliert).
  • Java 8+ oder OpenSSL 1.1+ nur dann, wenn Sie Keystores erstellen/konvertieren müssen.
  • Ein dediziertes Betriebssystemkonto mit minimalen Berechtigungen (cbom-sensor) mit reinem Lesezugriff – niemals Root-Zugriff.

Schritt-für-Schritt-Anleitung

Schritt 1: PKCS#12-Dateien suchen

find /opt/certs /etc/ssl /var/lib/certs -type f \( -name "*.p12" -o -name "*.pfx" \) 2>/dev/null # Überprüfen, ob eine Datei ein gültiges passwortgeschütztes Paket ist (listet Pakete auf, kein Schlüsselmaterial): openssl pkcs12 -info -in /opt/certs/server.p12 -noout -passin pass:changeit

Schritt 2: (Optional) Exportieren Sie eine PKCS#12-Datei aus JKS oder PEM.

Wenn sich die Zertifikate in einem JKS-Keystore befinden, exportieren Sie sie nach PKCS#12; oder bündeln Sie separate PEM-Zertifikats-/Schlüsseldateien:

keytool -importkeystore \ -srckeystore keystore.jks -srcstoretype JKS -srcstorepass -destkeystore out.p12 -deststoretype PKCS12 -deststorepass -noprompt openssl pkcs12 -export -in cert.pem -inkey key.pem -certfile chain.pem \ -out bundle.p12 -name "myserver" -passout pass:

Schritt 3: Leseberechtigungen für das Dateisystem erteilen

sudo useradd --system --no-create-home --shell /sbin/nologin cbom-sensor sudo setfacl -R -mu:cbom-sensor:rX /opt/certs sudo -u cbom-sensor openssl pkcs12 -info -in /opt/certs/server.p12 -noout -passin pass:

Schritt 4: Konfigurieren Sie den CBOM-Sicherheitssensor

Sensoren: - Name: Discover_Keystore aktiviert: true Zeitplan: "0 2 * * *" Optionen: Scanpfade: [/opt/certs, /etc/ssl/private, /var/lib/tomcat/conf] Dateierweiterungen: [.p12, .pfx] Rekursiv: true Keystore-Anmeldeinformationen: - Pfad: /opt/certs/server.p12 Passwortumgebung: CBOM_KS_SERVER_PASSWORD - Pfad: /opt/certs/wildcard.pfx Passwortumgebung: CBOM_KS_WILDCARD_PASSWORD Standardpasswortumgebung: CBOM_KS_DEFAULT_PASSWORD Ausschlusspfade: [/opt/certs/archive, /opt/certs/expired] Ausgabe: Format: cbom-json Ziel: Plattform

Setzen Sie jede Passwortvariable in einer eingeschränkten Umgebungsdatei (chmod 640, root:cbom-sensor) und laden Sie dann den Agenten neu.

Schritt 5: Validieren

sudo journalctl -u cbom-agent -n 100 --no-pager sudo cbom-ctl sensor run Discover_Keystore

Prüfen Sie, ob der Scan die erwarteten PKCS#12-Dateien findet und die Assets veröffentlicht. Überprüfen Sie im Portal (Assets → Zertifikate), ob Betreff, Ablaufdatum und Algorithmus ausgefüllt sind und kein Feld für den privaten Schlüssel vorhanden ist. Bei Dateien mit falschem Passwort wird eine Warnung zur MAC-Authentifizierung ausgegeben.

Häufige Fehler

MAC-Verifizierung fehlgeschlagen / falsches Passwort

Ursache: Das angegebene Passwort stimmt nicht überein, oder die Datei verwendet eine veraltete RC2/3DES-Verschlüsselung, die mit dem Host-OpenSSL nicht kompatibel ist.

Lösung: Überprüfen Sie dies mit openssl pkcs12 -info; exportieren Sie die alten Dateien erneut mit moderner Verschlüsselung.

Zugriff verweigert beim Lesen des Keystores

Ursache: cbom-sensor hat keine Leseberechtigung für die Datei oder deren übergeordnetes Verzeichnis.

Lösung: Leseberechtigung über setfacl oder Gruppenmitgliedschaft gewähren; Sensor erneut ausführen.

Es wurden keine Assets gefunden, obwohl Dateien vorhanden waren.

Ursache: Die Scanpfade oder Dateierweiterungen stimmen nicht mit den tatsächlichen Dateien überein (z. B. fehlt der führende Punkt).

Lösung: Vergleichen Sie die Ausgabe des Befehls „find“ mit der Konfiguration; korrigieren Sie Abweichungen und führen Sie den Befehl erneut aus.

Sicherheitsempfehlungen

  • Passwörter sollten über password_env referenziert werden – niemals in die YAML-Datei eingebettet werden.
  • Führen Sie den Sensor als dediziertes, schreibgeschütztes Benutzerkonto ohne Shell oder sudo aus.
  • Beschränken Sie die Umgebungsdatei auf Modus 640, root:cbom-sensor.
  • Rotieren Sie die PKCS#12-Speicherpasswörter gemäß der Richtlinie und starten Sie den Agenten neu.
  • Füge archivierte/abgelaufene Keystore-Verzeichnisse zu exclude_paths hinzu.

Fazit

Der Sensor Discover_Keystore bietet kontinuierliche, schreibgeschützte Einblicke in PKCS#12-Keystores – er extrahiert Zertifikats- und Public-Key-Metadaten, ohne jemals Private-Key-Material anzufassen – und deckt so ablaufende Zertifikate, schwache Schlüssellängen und veraltete Signaturalgorithmen in CBOM Secure auf.