Aller au contenu principal

Architecture des modules

S'applique à :
PQC ScannerModule ArchitectureScanning Pipeline

Vue d'ensemble des modules​

Le scanner est organisé en un petit ensemble de domaines fonctionnels qui forment un pipeline clair — de la ligne de commande, à travers l'analyse (scan) et l'évaluation, jusqu'à la sortie formatée.

ModuleResponsabilité
Interface en ligne de commandeAnalyser les arguments, valider les entrées, charger la configuration, initialiser la journalisation et déléguer à un mode d'analyse
Analyse principaleDétecter les algorithmes cryptographiques et calculer les scores de risque
ScannersImplémenter les modes d'analyse (agent, système de fichiers, domaine, réseau)
AnalyseursLire les formats pris en charge de certificats, de magasins de clés et de configuration
SortieRestituer les résultats au format JSON, YAML, SARIF ou en rapport terminal
UtilitairesJournalisation, gestion des erreurs et aides spécifiques à la plateforme

Analyse principale​

Identifie l'algorithme cryptographique utilisé par un certificat et évalue sa vulnérabilité quantique. Elle détermine la famille d'algorithme et la taille de clé, puis renvoie une valeur de risque quantique. Les catégories reconnues incluent RSA, ECDSA, DSA, Ed25519, 3DES, RC4, les algorithmes post-quantiques (PQC) et une catégorie « inconnu » par défaut pour tout ce qu'elle ne peut pas classer.

Transforme chaque constat en un score de risque unique assorti d'un niveau de priorité dérivé (de P0 Critique à P4 Info) et d'une brève ventilation expliquant comment le score a été obtenu. Le modèle détaillé est documenté dans Notation QRS.

Lorsqu'un certificat est analysé, les métadonnées suivantes sont extraites et utilisées tout au long du reste du pipeline :

ChampDescription
SubjectNom distinctif du sujet du certificat
IssuerNom distinctif de l'émetteur
SerialNuméro de série du certificat
Valide de / jusqu'àPériode de validité
AlgorithmAlgorithme cryptographique détecté
Taille de cléTaille de la clé publique
Vulnérable au quantiqueIndique si le certificat est vulnérable à une attaque quantique

Une liste de référence des algorithmes connus (indexée par identifiant d'objet) enregistre le nom de chaque algorithme, sa catégorie, sa vulnérabilité quantique et son statut d'obsolescence.

Scanners​

Agent

Effectue une analyse système complète de l'hôte local : il inspecte les magasins de certificats du système d'exploitation et, sauf désactivation, examine également les processus en cours d'exécution et le système de fichiers (avec une gestion dédiée des magasins de certificats pour Linux, Windows et macOS). Tous les éléments découverts sont agrégés en un seul résultat.

Système de fichiers

Parcourt récursivement une arborescence de répertoires (avec une profondeur configurable et un suivi facultatif des liens symboliques) et inspecte les fichiers en parallèle, en acheminant chacun vers le bon analyseur selon son type : PEM/CRT/CER, DER, PKCS#12 (.p12/.pfx) et magasins de clés Java (.jks/.jceks). Les fichiers non reconnus sont ignorés.

Domaine

Se connecte à un hôte et un port cibles via TLS, récupère la chaîne de certificats présentée, analyse chaque certificat et peut énumérer les suites de chiffrement prises en charge par le serveur.

Réseau

Capture passivement le trafic réseau et réassemble les flux TCP pour extraire les négociations TLS ; la capture et l'analyse s'exécutent simultanément jusqu'à ce qu'une durée configurée s'écoule ou que l'analyse soit interrompue. Les certificats observés dans les négociations sont analysés et rapportés.

Analyseurs​

Sortie​

Utilitaires​

Modèle de données​

Une analyse produit un résultat unique qui regroupe :

  • Métadonnées d'analyse — version du scanner, mode d'analyse, date, nom d'hôte et durée.
  • Constats — chacun décrit un actif découvert : un identifiant, son type (certificat ou magasin de clés), son emplacement, les informations de certificat extraites et son évaluation de risque.
  • Statistiques — décomptes agrégés sur l'ensemble des constats.