Mode agent - Scanner système
Mode agent - Scanner système
Analyse complète au niveau du système combinant la découverte du système de fichiers, l'analyse de domaine, l'énumération des processus et l'inventaire du magasin de certificats
Implémenté - Disponible en v1.0.0. Le mode agent est un scanner combiné qui orchestre l'analyse du système de fichiers, l'analyse de domaine, l'énumération des processus avec sockets TLS actifs et l'inventaire du magasin de certificats à l'échelle du système.
Vue d'ensemble
Le mode agent est le mode d'analyse le plus complet. Il combine l'analyse du système de fichiers et l'analyse de domaine en une seule opération et ajoute des capacités au niveau du système : l'énumération des processus pour trouver les processus en cours d'exécution disposant de sockets TLS actifs, l'inventaire du magasin de certificats à l'échelle du système, et l'analyse de la configuration SSL/TLS au niveau du système d'exploitation. Ce mode est conçu pour une découverte approfondie des actifs cryptographiques au niveau de l'hôte.
Fonctionnement
Flux du mode agent
Analyse du système de fichiers
Exécute le scanner complet du système de fichiers pour découvrir les certificats, les magasins de clés et les clés
Analyse de domaine
Exécute le scanner de domaine sur les points de terminaison TLS découverts ou configurés
Énumération des processus
Énumère les processus disposant de sockets TLS actifs (facultatif)
Inventaire du magasin de certificats
Inventorie les magasins de certificats à l'échelle du système sur l'ensemble du système d'exploitation
Configuration SSL/TLS de l'OS
Analyse les paramètres de configuration SSL/TLS au niveau du système d'exploitation
Rapport consolidé
Fusionne toutes les découvertes en un seul rapport complet
Ce que le mode agent combine
Le mode agent orchestre plusieurs composants de scanner en une seule exécution :
Scanner de système de fichiers
- PEM, DER, PKCS#12/PFX, JKS/JCEKS, clés privées
- Magasin de certificats Windows (schannel)
- Peut être désactivé avec
--no-filesystem-scan
Scanner de domaine
- Handshake TLS via rustls (TLS 1.2/1.3)
- Extraction complète de la chaîne de certificats
- Détection de la suite de chiffrement et de l'échange de clés
- Découverte de sous-domaines et détection du KEX PQ
Énumération des processus
- Découvre les processus en cours d'exécution disposant de sockets TLS actifs
- Fonctionnalité facultative pour une visibilité au niveau de l'hôte
- Peut être désactivée avec
--no-process-scan
Inventaire du magasin de certificats
- Énumération du magasin de certificats à l'échelle du système
- Analyse de la configuration SSL/TLS au niveau de l'OS
- Prise en charge multiplateforme
Utilisation
Analyse de base
# Run agent mode (combines filesystem + domain + process + certstore scanning)
dke-scanner-agent agent
# Run with output to file
dke-scanner-agent agent --output agent-report.json
# Run with specific output format
dke-scanner-agent agent --format yaml --output report.yaml
Options en ligne de commande
| Indicateur | Description | Défaut | Requis |
|---|---|---|---|
| --no-process-scan | Ignore l'énumération des processus (découverte des sockets TLS) | false | Non |
| --no-filesystem-scan | Ignore l'analyse du système de fichiers | false | Non |
| --output <FILE> | Chemin du fichier de sortie | stdout | Non |
| --format <FMT> | Format de sortie : json, yaml, terminal ou html | json | Non |
Le mode agent hérite de toutes les options du scanner de système de fichiers et du scanner de domaine. Vous pouvez passer des indicateurs de système de fichiers tels que --path, --extensions, --scan-windows-certstore, et des indicateurs de domaine tels que --target, --discover-subdomains, etc.
Exemples avancés
Architecture
Le mode agent agit comme un orchestrateur, combinant les scanners de système de fichiers et de domaine avec une découverte supplémentaire au niveau du système :
- Exécute l'analyse du système de fichiers (certificats, magasins de clés, clés) sauf si elle est désactivée avec
--no-filesystem-scan. - Exécute l'analyse de domaine sur les points de terminaison TLS découverts.
- Énumère les sockets TLS actifs des processus en cours d'exécution sauf si elle est désactivée avec
--no-process-scan. - Inventorie les magasins de certificats du système.
- Analyse la configuration SSL/TLS au niveau du système d'exploitation.
Exemple de sortie
{
"scan_metadata": {
"scanner_version": "1.0.0",
"scan_mode": "agent",
"scan_date": "2025-01-30T14:32:10Z",
"hostname": "webserver-prod-01",
"os": "Linux 5.15.0-91-generic",
"platform": "Ubuntu 22.04.3 LTS"
},
"summary": {
"total_findings": 247,
"critical": 12,
"high": 45,
"medium": 123,
"low": 67,
"certificates_found": 89,
"keystores_found": 23,
"processes_with_tls": 34
},
"findings": [
{
"id": "agent-001",
"source": "filesystem",
"type": "certificate",
"location": "/etc/ssl/certs/api-server.crt",
"certificate": {
"subject": "CN=api.bank.com, O=Example Bank, C=US",
"issuer": "CN=DigiCert Global Root CA",
"algorithm": "RSA",
"key_size": 2048,
"not_after": "2026-01-01T23:59:59Z"
},
"risk_assessment": {
"quantum_risk_score": 8.2,
"priority": "P1",
"severity": "HIGH"
}
},
{
"id": "agent-002",
"source": "domain",
"type": "tls_endpoint",
"target": "api.bank.com:443",
"tls_info": {
"protocol_version": "TLS 1.3",
"cipher_suite": "TLS_AES_256_GCM_SHA384",
"key_exchange": "X25519"
},
"certificates": [
{
"position": 0,
"type": "leaf",
"subject": "CN=api.bank.com",
"algorithm": "RSA",
"key_size": 2048,
"quantum_vulnerable": true
}
]
},
{
"id": "agent-003",
"source": "process_scan",
"type": "process",
"process": {
"pid": 1234,
"name": "nginx",
"active_tls_sockets": 12
},
"risk_assessment": {
"quantum_risk_score": 7.5,
"priority": "P1",
"severity": "HIGH"
}
},
{
"id": "agent-004",
"source": "certstore",
"type": "certificate_store",
"store": "LocalMachine\\My",
"certificates": 15,
"quantum_vulnerable": 12
}
],
"os_tls_config": {
"default_tls_versions": ["TLS 1.2", "TLS 1.3"],
"system_cipher_suites": ["TLS_AES_256_GCM_SHA384", "TLS_CHACHA20_POLY1305_SHA256"]
}
}
Privilèges et autorisations
Le mode agent accède aux magasins de certificats du système, énumère les processus et lit des chemins protégés du système de fichiers. Des privilèges élevés sont recommandés pour obtenir des résultats complets.
Linux
# Run with sudo for full system access
sudo dke-scanner-agent agent --output report.json
# Or grant specific capabilities
sudo setcap cap_sys_ptrace,cap_dac_read_search+ep /usr/local/bin/dke-scanner-agent
dke-scanner-agent agent
Windows
# Run from an elevated (Administrator) PowerShell
dke-scanner-agent agent --output report.json
Des privilèges d'administrateur sont nécessaires pour accéder au magasin de certificats LocalMachine et pour l'énumération des processus.
macOS
# Run with sudo
sudo dke-scanner-agent agent --output report.json
Accordez l'« accès complet au disque » à Terminal.app dans les Préférences Système pour un accès complet au trousseau (Keychain).
Quand utiliser le mode agent
Inventaire complet de l'hôte
Découvrez tous les actifs cryptographiques d'un même hôte : fichiers, points de terminaison, processus et magasins de l'OS
Audits de conformité
Générez des rapports complets pour les audits de préparation PQC et la documentation de conformité
Évaluation avant migration
Avant de migrer vers la PQC, comprenez l'empreinte cryptographique complète de chaque serveur
Validation après migration
Après la migration PQC, vérifiez que tous les actifs ont été mis à jour sur l'ensemble du système