Zum Hauptinhalt springen

Modularchitektur

Gilt für:
PQC ScannerModularchitekturScan-Pipeline

Modulüberblick​

Der Scanner ist in eine kleine Gruppe funktionaler Bereiche gegliedert, die eine klare Pipeline bilden – von der Befehlszeile über Scanning und Analyse bis hin zur formatierten Ausgabe.

ModulVerantwortlichkeit
BefehlszeilenschnittstelleArgumente parsen, Eingaben validieren, Konfiguration laden, Logging initialisieren und an einen Scan-Modus weiterleiten
KernanalyseKryptografische Algorithmen erkennen und Risikobewertungen berechnen
ScannerDie Scan-Modi implementieren (Agent, Dateisystem, Domain, Netzwerk)
ParserDie unterstützten Zertifikats-, Keystore- und Konfigurationsformate lesen
AusgabeErgebnisse als JSON, YAML, SARIF oder Terminal-Report darstellen
HilfsfunktionenLogging, Fehlerbehandlung und plattformspezifische Helfer

Kernanalyse​

Identifiziert den von einem Zertifikat verwendeten kryptografischen Algorithmus und bewertet dessen Quantenanfälligkeit. Es ermittelt die Algorithmusfamilie und die Schlüsselgröße und gibt anschließend einen Quantenrisikowert zurück. Zu den erkannten Kategorien gehören RSA, ECDSA, DSA, Ed25519, 3DES, RC4, Post-Quantum-Algorithmen (PQC) sowie ein „Unbekannt“-Fallback für alles, was nicht klassifiziert werden kann.

Wandelt jeden Fund in einen einzigen Risikowert um, mit einer abgeleiteten Prioritätsstufe (P0 Kritisch bis P4 Info) und einer kurzen Aufschlüsselung, die erklärt, wie der Wert zustande kam. Das detaillierte Modell ist unter QRS-Bewertung dokumentiert.

Wenn ein Zertifikat geparst wird, werden die folgenden Metadaten extrahiert und im gesamten weiteren Verlauf der Pipeline verwendet:

FeldBeschreibung
SubjectDistinguished Name des Zertifikatsinhabers
IssuerDistinguished Name des Ausstellers
SerialSeriennummer des Zertifikats
Gültig ab / bisGültigkeitszeitraum
AlgorithmusErkannter kryptografischer Algorithmus
SchlüsselgrößeGröße des öffentlichen Schlüssels
QuantenanfälligOb das Zertifikat für einen Quantenangriff anfällig ist

Eine Referenzliste bekannter Algorithmen (indiziert nach Object Identifier) erfasst für jeden Algorithmus Name, Kategorie, Quantenanfälligkeit und Deprecation-Status.

Scanner​

Agent

Führt einen vollständigen Systemscan des lokalen Hosts durch: Er inspiziert die Zertifikatspeicher des Betriebssystems und untersucht – sofern nicht deaktiviert – auch laufende Prozesse und das Dateisystem (mit dedizierter Behandlung der Zertifikatspeicher für Linux, Windows und macOS). Alle gefundenen Objekte werden zu einem einzigen Ergebnis zusammengeführt.

Dateisystem

Durchläuft rekursiv einen Verzeichnisbaum (mit konfigurierbarer Tiefe und optionalem Folgen von Symlinks) und inspiziert Dateien parallel, wobei jede je nach Typ an den passenden Parser weitergeleitet wird: PEM/CRT/CER, DER, PKCS#12 (.p12/.pfx) und Java-Keystores (.jks/.jceks). Nicht erkannte Dateien werden übersprungen.

Domain

Verbindet sich mit einem Zielhost und -port über TLS, ruft die vorgelegte Zertifikatskette ab, analysiert jedes Zertifikat und kann die vom Server unterstützten Cipher-Suites auflisten.

Netzwerk

Erfasst passiv den Netzwerkverkehr und setzt TCP-Streams wieder zusammen, um TLS-Handshakes zu extrahieren; Erfassung und Parsing laufen gleichzeitig, bis eine konfigurierte Dauer abgelaufen ist oder der Scan unterbrochen wird. In den Handshakes gesehene Zertifikate werden analysiert und gemeldet.

Parser​

Ausgabe​

Hilfsfunktionen​

Datenmodell​

Ein Scan erzeugt ein einziges Ergebnis, das Folgendes bündelt:

  • Scan-Metadaten – Scanner-Version, Scan-Modus, Datum, Hostname und Dauer.
  • Funde – jeder beschreibt ein entdecktes Asset: eine Kennung, seinen Typ (Zertifikat oder Keystore), seinen Speicherort, die extrahierten Zertifikatsinformationen und seine Risikobewertung.
  • Statistiken – aggregierte Zählungen über alle Funde hinweg.