Technologies, expériences et périmètre
Stack technique Python, protocole expérimental resserré sur 8 expériences (E1–E8), séparation Panel A / Panel B et périmètre du prototype.
Stack technique du prototype
| Catégorie | Technologies |
|---|---|
| Langage | Python 3.x — outil en ligne de commande |
| Découverte DNS | dnspython + crt.sh API (CT logs) + RDAP |
| Observation HTTP/TLS | httpx (bibliothèque), ssl (stdlib) |
| Correspondance CVE | NVD API 2.0 + CISA KEV JSON feed + EPSS API (FIRST.org) — enrichissement expérimental |
| Graphe d'actifs | NetworkX ou structure interne domaine-IP-certificat-ASN |
| Scoring | AHP implémentée en Python — pondérations issues du panel A |
| Rapports PDF | ReportLab ou WeasyPrint — génération en français |
| Suivi temporel | Sérialisation JSON — commande diff intégrée |
Huit expériences structurées en deux groupes
Le protocole est resserré autour de six expériences centrales, avec le suivi temporel et l'acceptabilité comme résultats exploratoires secondaires.
Noyau expérimental — E1 à E6
| N° | Expérience | Mesure |
|---|---|---|
| E1 | Laboratoire avec vérité terrain | Déploiement d'un environnement contenant un nombre connu de domaines, IP, services, versions et erreurs de configuration |
| E2 | Découverte et fusion multi-source | Précision, rappel et F1-score des actifs découverts vs vérité terrain — comparaison avec Amass/Subfinder |
| E3 | Résolution d'identité et déduplication | Précision et rappel de la résolution : actifs uniques correctement identifiés vs doublons éliminés — comparaison avec httpx |
| E4 | Calibration du modèle de confiance | Vérification que le niveau « élevé » correspond mieux à la réalité que « faible » — matrice de confusion |
| E5 | Priorisation et validation AHP | Corrélation de Spearman entre classement SurfaceGuard et classement du panel B (validation indépendante du panel A) |
| E6 | Remédiation et sensibilité | Correction des expositions → re-scan → mesure de réduction ; variation des pondérations AHP → stabilité du classement |
Résultats exploratoires secondaires — E7 à E8
| N° | Expérience | Mesure |
|---|---|---|
| E7 | Suivi temporel (T0, T+15, T+30) | Détection des changements injectés dans le laboratoire à des dates connues |
| E8 | Acceptabilité exploratoire | Présentation du rapport PDF à 3–5 responsables IT — compréhension et utilité perçue |
Séparation des panels d'experts
3 à 5 experts définissent les comparaisons par paires AHP. Si le nombre total d'experts est inférieur à 6, une validation croisée « leave-one-expert-out » est utilisée : quatre produisent les pondérations, le cinquième classe indépendamment, puis rotation.
Classe les cas du laboratoire sans connaître le résultat de SurfaceGuard. La corrélation de Spearman est calculée entre le classement Panel B et le classement SurfaceGuard. Ce panel n'a pas participé à la pondération AHP.
Note sur le module CVE : Traité comme un enrichissement expérimental. EPSS estime la probabilité d'exploitation dans les 30 jours, mais ne connaît ni l'importance de l'actif ni les protections en place. Toute correspondance CVE est accompagnée de la mention « validation humaine requise ».
Inclus dans le MVP et hors périmètre
Inclus dans le MVP
- Découverte d'actifs par fusion : DNS, CT (crt.sh), RDAP/WHOIS
- Observation HTTP/HTTPS (en-têtes, bannières, TLS) — laboratoire et domaines autorisés uniquement
- Résolution d'identité et déduplication par IP, service, vhost et certificat
- Attribution d'actifs à une organisation avec niveau de confiance (4 niveaux)
- Correspondance prudente CVE candidates (NVD API + CISA KEV + EPSS)
- Scoring multicritère explicable AHP — panels A et B séparés
- Comparaison entre deux collectes (diff) pour détecter les changements
- Rapport PDF en français
Explicitement hors du MVP
- Surveillance permanente (cron/systemd), alertes, facturation, multi-client — prévus pour une version ultérieure
- Tests d'exploitation, brute force, contournement, validation intrusive de CVE
- Scans actifs sur des domaines sans autorisation écrite de leur propriétaire
- Prétention à évaluer la sécurité globale d'une organisation — le système évalue l'exposition externe observable sur un périmètre DNS défini