PKCS#12 / PFX Keystore-integrationsguide

Översikt

Den här guiden konfigurerar CBOM Secure Discover_Keystore-sensorn för att upptäcka PKCS#12 (.p12, .pfx) nyckellager – lösenordsskyddade behållare som paketerar en privat nyckel med dess certifikatkedja. Sensorn skannar konfigurerade sökvägar skrivskyddat och extraherar certifikatets subjekt/utfärdares DN, serienummer och giltighet, algoritm och storlek för publik nyckel, signaturalgoritm, SAN, nyckelanvändning och fingeravtryck. Den läser, lagrar eller överför aldrig privat nyckelmaterial.

Förutsättningar

  • CBOM-plattformsåtkomst och Discover_Keystore-agenten installerad på värd(arna) med .p12/.pfx-filerna.
  • Minst en .p12- eller .pfx-fil i målkatalogerna.
  • Lösenordet för varje nyckellager som sensorn öppnar (anges som hemligheter, loggas aldrig).
  • Java 8+ eller OpenSSL 1.1+ endast om du behöver skapa/konvertera nyckellager.
  • Ett dedikerat OS-konto med lägst behörighet (cbom-sensor) med skrivskyddad åtkomst — aldrig root.

Steg-för-steg-guide

Steg 1: Leta reda på PKCS#12-filer

hitta /opt/certs /etc/ssl /var/lib/certs -type f \( -name "*.p12" -o -name "*.pfx" \) 2>/dev/null # verifiera att en fil är ett giltigt lösenordsskyddat paket (listar paket, inget nyckelmaterial): openssl pkcs12 -info -in /opt/certs/server.p12 -noout -passin pass:changeit

Steg 2: (Valfritt) Exportera en PKCS#12 från JKS eller PEM

Om certifikaten finns i ett JKS-nyckellager, exportera till PKCS#12; eller paketera separata PEM-certifikat-/nyckelfiler:

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 -namn "minserver" -passout pass:

Steg 3: Bevilja skrivskyddade filsystembehörigheter

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:

Steg 4: Konfigurera CBOM Secure Sensor

sensorer: - namn: Discover_Keystore aktiverad: sant schema: "0 2 * * *" alternativ: scan_paths: [/opt/certs, /etc/ssl/private, /var/lib/tomcat/conf] file_extensions: [.p12, .pfx] rekursiv: sant keystore_credentials: - sökväg: /opt/certs/server.p12 password_env: CBOM_KS_SERVER_PASSWORD - sökväg: /opt/certs/wildcard.pfx password_env: CBOM_KS_WILDCARD_PASSWORD default_password_env: CBOM_KS_DEFAULT_PASSWORD exclude_paths: [/opt/certs/archive, /opt/certs/expired] output: format: cbom-json destination: plattform

Ställ in varje lösenordsvariabel i en begränsad miljöfil (chmod 640, root:cbom-sensor) och ladda sedan om agenten.

Steg 5: Validera

sudo journalctl -u cbom-agent -n 100 --no-pager sudo cbom-ctl sensor kör Discover_Keystore

Bekräfta att skanningen hittar de förväntade PKCS#12-filerna och publicerar resurserna. Kontrollera att ämne/utgångsdatum/algoritm är ifyllda i portalen (Tillgångar → Certifikat). Filer med felaktigt lösenord loggar en MAC-verifieringsvarning.

Vanliga fel

MAC-verifieringsfel / felaktigt lösenord

Orsak: Det angivna lösenordet matchar inte, eller så använder filen äldre RC2/3DES-kryptering som är inkompatibel med värdens OpenSSL.

Lösning: Verifiera med openssl pkcs12 -info; exportera äldre filer igen med modern kryptering.

Åtkomst nekad att läsa nyckelarkivet

Orsak: cbom-sensor saknar läsbehörighet för filen eller dess överordnade katalog.

Lösning: Bevilja läsning via setfacl eller gruppmedlemskap; kör sensorn igen.

0 tillgångar hittades trots att filer finns

Orsak: scan_paths eller file_extensions matchar inte de faktiska filerna (t.ex. saknad inledande punkt).

Lösning: Jämför utdata från ett find-kommando med konfigurationsfilen; korrigera felaktigheter och kör om.

Säkerhetsrekommendationer

  • Referera till lösenord via password_env — bädda aldrig in dem i YAML.
  • Kör sensorn som ett dedikerat skrivskyddat konto utan shell eller sudo.
  • Begränsa miljöfilen till läge 640, root:cbom-sensor.
  • Rotera PKCS#12-lösenord för lagring per policy och starta om agenten.
  • Lägg till arkiverade/utgångna nyckelkataloger till exclude_paths.

Slutsats

Sensorn Discover_Keystore ger kontinuerlig, skrivskyddad insyn i PKCS#12-nyckellager – extraherar certifikat- och publika nycklar-metadata utan att någonsin vidröra privata nyckelmaterial – och avslöjar utgångna certifikat, svaga nyckelstorlekar och föråldrade signaturalgoritmer i CBOM Secure.