Spectre
SecurityEtude de cas — Securite offensive

Spectre

Une plateforme autonome de tests d'intrusion qui orchestre 39 agents d'exploitation IA, plus de 25 scanners de securite et un raisonnement multi-LLM a travers les cadres de conformite DORA TLPT et NIS2 — de la reconnaissance au rapport executif.

Démo frontend — l'infrastructure backend n'est pas déployée pour cette vitrine

ActifNext.jsTypeScriptFastAPILangGraphTemporalNeo4jQdrant

Résultats clés

Agents d'exploitation IA

39 agents

Chaque agent se specialise dans une classe de vulnerabilites — SQLi, XSS, SSRF, LFI, RCE, crypto, contournement d'authentification, et plus.

Integrations de scanners

25+ tools

ZAP, Nuclei, Nmap, Masscan, Semgrep, Nikto, Subfinder, Amass, Trivy, SQLMap, Metasploit, et plus.

Services Docker

14 containers

FastAPI, Next.js, PostgreSQL, PgBouncer, Redis, Neo4j, Qdrant, Temporal, workers et sidecars de scanners.

Cadres de conformite

DORA + NIS2

Collecte automatisee de preuves TLPT et mapping reglementaire pour la conformite du secteur financier europeen.

Le problème

Ce que ce projet devait résoudre

Les workflows de tests d'intrusion sont fragmentes entre des dizaines d'outils autonomes, chacun produisant des sorties incompatibles. Les analystes perdent des heures en tri manuel, en scans redondants et en assemblage de rapports au lieu de raisonner sur les veritables chemins d'attaque. Spectre a ete concu pour unifier l'ensemble du cycle de vie de la securite offensive sous une orchestration pilotee par l'IA.

Spectre est ne du constat que les tests d'intrusion modernes restent massivement manuels. Les equipes de securite passent plus de temps a trier la sortie des scanners, rediger des rapports et basculer entre les outils qu'a raisonner reellement sur les chemins d'attaque. L'objectif etait de construire une plateforme ou les agents IA gerent le travail de fond — scan, tri, correlation, exploitation — pendant que les humains se concentrent sur la strategie et le jugement.

Le systeme est construit autour d'un backend FastAPI orchestrant 39 agents d'exploitation specialises via des machines a etats LangGraph, avec Temporal pour la gestion des workflows de campagne de longue duree. Chaque agent est une unite autonome capable de raisonner dans son domaine (SQLi, XSS, SSRF, faiblesses cryptographiques, etc.), de selectionner les outils appropries et d'enchainer les decouvertes en narratifs d'attaque. Un graphe de connaissances Neo4j connecte les cibles, les vulnerabilites et les chemins d'exploitation en une surface d'attaque interrogeable.

Le frontend est une application Next.js 16 avec des animations GSAP, un suivi de campagne en temps reel via SSE et un module de conformite DORA TLPT qui mappe directement les decouvertes aux cadres reglementaires. Le resultat est une plateforme capable d'executer un test d'intrusion complet — de la decouverte de sous-domaines au rapport PDF executif — avec une intervention humaine minimale.

Ce qui a changé

Au lieu d'executer manuellement des scanners, de copier les sorties entre les outils et d'assembler des rapports dans Word, Spectre permet aux operateurs de definir une cible de campagne et d'observer les agents IA decouvrir, scanner, exploiter et rapporter de maniere autonome — avec une tracabilite complete de la decouverte a la preuve jusqu'au mapping de conformite.

Pourquoi c'était difficile

Le defi principal etait d'orchestrer 39 agents qui ont chacun besoin d'outils differents, de schemas de raisonnement differents et de modes de defaillance differents — tout en maintenant l'ensemble du systeme suffisamment deterministe pour produire des preuves de niveau conformite. Equilibrer l'autonomie des agents avec la controlabilite humaine a necessite une conception rigoureuse des machines a etats dans LangGraph et des patterns de workflows durables dans Temporal.

Contraintes

  • 39 agents d'exploitation devaient fonctionner de maniere autonome tout en restant auditables et controlables par les operateurs humains.
  • Plus de 25 integrations de scanners (ZAP, Nuclei, Nmap, Semgrep, SQLMap, etc.) necessitaient une normalisation unifiee des sorties.
  • Les workflows de campagne pouvaient durer des heures — Temporal etait necessaire pour une execution durable et reprise possible.
  • La conformite DORA TLPT et NIS2 exigeait des pistes de preuves structurees, pas seulement des decouvertes brutes.
  • Le fallback multi-LLM (OpenRouter, Mistral, Ollama) etait essentiel pour le controle des couts et la disponibilite.

Mon rôle

  • Conception et construction de la plateforme full-stack : backend FastAPI, frontend Next.js, infrastructure Docker.
  • Architecture du systeme multi-agents base sur LangGraph avec 39 agents d'exploitation specialises.
  • Construction du moteur de workflows Temporal pour l'orchestration durable des campagnes de longue duree.
  • Integration de plus de 25 scanners de securite avec normalisation unifiee des sorties dans Neo4j.
  • Implementation du mapping de conformite DORA TLPT et generation automatisee de rapports executifs.
  • Conception de l'interface de suivi de campagne en temps reel avec streaming SSE et animations GSAP.

Preuves

À quoi ressemble réellement le produit

Captures d'écran réelles du produit — chacune illustre un argument concret de clarté, de contrôle ou d'observabilité.

Tableau de bord du centre de commandementCentre de controleCliquer pour agrandir

Tableau de bord du centre de commandement

Le systeme nerveux central de Spectre — etat des campagnes en temps reel, nombre d'agents actifs, distribution des decouvertes par severite et sante du systeme en un coup d'oeil.

Concu pour un monitoring de type SOC ou les operateurs doivent suivre plusieurs campagnes simultanees sans changer de contexte.

Operations de campagneMoteur de workflowsCliquer pour agrandir

Operations de campagne

Gestion de campagnes avec definition du perimetre cible, selection des agents, configuration des scanners et orchestration des workflows Temporal.

Chaque campagne est un workflow Temporal durable qui survit aux redemarrages, gere les timeouts et produit une piste d'audit complete.

Arsenal de scannersIntegration d'outilsCliquer pour agrandir

Arsenal de scanners

Interface unifiee pour plus de 25 scanners de securite — chacun avec surveillance de la sante, configuration et sortie normalisee alimentant le graphe de connaissances.

Les sorties des scanners sont analysees dans un schema commun avant d'etre ingerees dans Neo4j, permettant la correlation inter-outils.

Decouvertes de vulnerabilitesSurface de triCliquer pour agrandir

Decouvertes de vulnerabilites

Decouvertes priorisees par IA avec scoring de severite, mapping CVSS, visualisation des chaines d'exploitation et export de preuves en un clic.

L'interface de tri reduit la fatigue des analystes en faisant remonter les decouvertes les plus significatives en premier avec un contexte d'exploitation pre-construit.

Rapport de campagneLivrable executifCliquer pour agrandir

Rapport de campagne

Generation automatisee de rapports avec resume executif, decouvertes techniques, matrices de risques et mapping de conformite — pret pour la diffusion aux parties prenantes.

Les rapports sont d'abord generes sous forme de donnees structurees, puis rendus en PDF avec WeasyPrint pour une mise en page pixel-perfect.

Conformite DORA TLPTReglementaireCliquer pour agrandir

Conformite DORA TLPT

Module de tests d'intrusion guides par la menace (Threat-Led Penetration Testing) qui mappe les decouvertes aux exigences reglementaires DORA et NIS2 avec des chaines de preuves.

Concu pour la conformite du secteur financier europeen — chaque decouverte est liee a des articles reglementaires specifiques et des cadres de controle.

Décisions

Les compromis qui ont façonné le produit

Le travail le plus solide se révèle dans les choix faits sous pression, pas seulement dans l'interface finale.

LangGraph plutot que LangChain seul

Défi

39 agents d'exploitation necessitaient des flux de raisonnement structures avec branchements, retentatives et selection d'outils — pas de simples chaines sequentielles.

Décision

Adoption des machines a etats LangGraph ou chaque type d'agent possede sa propre topologie de graphe : les agents de reconnaissance utilisent des flux lineaires, les agents d'exploitation utilisent des graphes cycliques avec des boucles de validation, et les agents de reporting utilisent des patterns fan-out/fan-in.

Compromis

LangGraph a ajoute de la complexite aux definitions des agents mais a rendu le comportement de chaque agent entierement inspectable et deboguable — essentiel pour les preuves de conformite.

Graphe de connaissances Neo4j pour la surface d'attaque

Défi

Les decouvertes de plus de 25 scanners devaient etre correlees en chemins d'attaque, pas simplement listees dans des tableaux de vulnerabilites plats.

Décision

Construction d'un graphe de connaissances Neo4j ou les cibles, les services, les vulnerabilites et les exploits sont des noeuds connectes. Cela permet des requetes de graphe comme 'montrer tous les chemins depuis les services exposes sur Internet jusqu'a la base de donnees a travers les vulnerabilites exploitables.'

Compromis

Neo4j a ajoute une charge operationnelle (un service avec etat supplementaire a gerer) mais a transforme les sorties brutes des scanners en renseignements exploitables sur lesquels les agents peuvent raisonner.

Temporal pour l'orchestration des campagnes

Défi

Les campagnes de tests d'intrusion durent des heures, impliquent des dizaines de taches de scanners en parallele et doivent survivre aux defaillances d'infrastructure sans perdre la progression.

Décision

Utilisation de workflows durables Temporal ou chaque phase de campagne (reconnaissance, scan, exploitation, rapport) est une etape de workflow avec semantiques de retry automatique, de timeout et de checkpoint.

Compromis

Le SDK de Temporal, d'inspiration Java, a necessite une conception soignee de wrappers Python, mais la garantie d'execution exactly-once et l'historique complet des workflows l'ont rendu indispensable pour les pistes d'audit de niveau conformite.

Architecture

Comment les données circulent dans le système

1

Definition de campagne et cadrage du perimetre

L'operateur definit le perimetre de la campagne — domaines cibles, plages d'adresses IP, actifs exclus, selection des scanners et cadre de conformite (DORA TLPT ou NIS2). La campagne est enregistree comme un workflow Temporal.

Un workflow de campagne durable et reprise possible est cree avec un snapshot complet de la configuration.

2

Reconnaissance et decouverte d'actifs

Les agents Subfinder, Amass et Nmap effectuent l'enumeration de sous-domaines, le scan de ports et l'identification de services. Les actifs decouverts sont ingeres dans le graphe de connaissances Neo4j sous forme de noeuds interconnectes.

Cartographie complete de la surface d'attaque avec versions des services, technologies et topologie reseau.

3

Scan de vulnerabilites et correlation

ZAP, Nuclei, Semgrep, Nikto et Trivy s'executent en parallele sur les actifs decouverts. Les sorties des scanners sont normalisees dans un schema commun et correlees dans Neo4j pour identifier les decouvertes qui se recoupent et les chaines d'attaque.

Inventaire de vulnerabilites deduplique et correle avec analyse des chemins d'attaque basee sur le graphe.

4

Exploitation et validation pilotees par l'IA

39 agents d'exploitation specialises recoivent les decouvertes priorisees et tentent une exploitation automatisee — payloads SQLi, chaines XSS, pivots SSRF, contournements d'authentification. Chaque tentative est journalisee avec des preuves completes pour l'audit.

Exploits valides avec preuves de concept, distingues des decouvertes theoriques.

5

Tri, scoring et mapping de conformite

Un consensus multi-LLM (OpenRouter + Mistral + Ollama) score et priorise les decouvertes. Le mapping DORA TLPT et NIS2 lie chaque decouverte aux articles reglementaires et aux cadres de controle.

Decouvertes classees par risque avec des chaines de preuves de conformite reglementaire pretes pour l'audit.

6

Generation et livraison du rapport

Les resumes executifs automatises, les decouvertes techniques, les matrices de risques et les recommandations de remediation sont assembles. WeasyPrint rend le PDF final avec une mise en forme coherente.

Rapport de test d'intrusion pret pour les parties prenantes avec une piste de preuves complete du scan a la decouverte jusqu'a l'exploit.

Spectre est une stack Docker Compose a 14 services centree sur un backend FastAPI qui orchestre 39 agents d'exploitation bases sur LangGraph via des workflows durables Temporal. Le frontend est une application Next.js 16 avec streaming SSE en temps reel pour le suivi de campagne. Les scanners de securite (ZAP, Nuclei, Nmap, Semgrep, etc.) s'executent en conteneurs sidecar avec normalisation des sorties dans un graphe de connaissances Neo4j. Qdrant fournit la recherche de similarite vectorielle pour la deduplication des vulnerabilites. PostgreSQL avec PgBouncer gere l'etat persistant, Redis gere le pub/sub et le cache, et Traefik route le trafic entre les services. Le fallback multi-LLM assure la disponibilite des agents a travers les fournisseurs OpenRouter, Mistral et Ollama.

Surfaces produit

Les interfaces qui portent l'expérience

Suivi de campagne en temps reel

Suivi de campagne en temps reel

Tableaux de bord de campagne en direct avec activite des agents diffusee via SSE, progression des scanners et compteurs de decouvertes. Les operateurs peuvent mettre en pause, reprendre ou rediriger les campagnes sans perdre l'etat grace au modele de workflows durables de Temporal.

Streaming Server-Sent EventsControle des workflows TemporalFlux d'activite des agents en directPause/reprise de campagne
Gestion des cibles de campagne

Gestion des cibles de campagne

Cadrage granulaire des cibles avec listes de domaines, plages d'adresses IP, notation CIDR et regles d'exclusion d'actifs. Chaque cible est suivie tout au long de son cycle de vie, de la decouverte a l'exploitation, avec des indicateurs de statut.

Support des plages CIDRRegles d'exclusion d'actifsSuivi du cycle de vieValidation du perimetre
Detail de campagne et analytique des agents

Detail de campagne et analytique des agents

Inspection approfondie des campagnes montrant la performance des agents, les resultats des scanners, le detail des durees et la distribution des decouvertes par severite. La vue detaillee offre une visibilite operationnelle complete sur ce que chaque agent a decouvert et exploite.

Metriques de performance par agentDetail des resultats par scannerDistribution par severiteAnalytique temporelle
Vue de renseignement sur les cibles

Vue de renseignement sur les cibles

Analyse individuelle des cibles avec les services decouverts, les ports ouverts, les technologies identifiees et les vulnerabilites liees, rendues sous forme de sous-vue du graphe de connaissances extraite de Neo4j.

Sous-vue du graphe Neo4jIdentification des servicesDetection des technologiesVulnerabilites liees
Console d'analyse des vulnerabilites

Console d'analyse des vulnerabilites

Interface d'analyse approfondie pour les decouvertes individuelles avec scoring CVSS, visualisation des chaines d'exploitation, actifs affectes, conseils de remediation et export de preuves en un clic pour la documentation de conformite.

Scoring CVSSVisualisation des chaines d'exploitationExport de preuvesConseils de remediation
Generateur de rapports executifs

Generateur de rapports executifs

Generation automatisee de rapports avec des sections configurables — resume executif, decouvertes techniques, matrices de risques, mapping de conformite et feuille de route de remediation. Rendu en PDF via WeasyPrint avec une charte graphique coherente.

Sections configurablesRendu PDFMapping de conformiteMatrices de risques
Parametres et configuration de la plateforme

Parametres et configuration de la plateforme

Configuration globale pour les fournisseurs LLM, les chemins des scanners, les cles API, les canaux de notification et la selection du cadre de conformite. La chaine de fallback multi-LLM est configuree ici avec un ordre de priorite.

Configuration multi-LLMGestion des scannersCoffre-fort de cles APICanaux de notification

Stack technique

Construit avec

Framework

Next.js 16TypeScript 5.3FastAPI 0.115Python 3.12Pydantic v2

AI

LangGraphLangChain CoreMulti-LLM fallback (OpenRouter + Mistral + Ollama)structlog

Data

TemporalNeo4jQdrantPostgreSQL + PgBouncerRedis 7TanStack React Query 5

Security

OWASP ZAPNucleiNmap + MasscanSemgrepNiktoSubfinder + AmassTrivySQLMapMetasploit RPC

UI

Tailwind CSS 4GSAP + ScrollTriggerRadix UI + shadcn/ui

Infra

Docker ComposeTraefikPrometheus + Grafana

Langages

Python 3.12TypeScriptCypher (Neo4j)SQLYAMLDockerfile

Ce que ce projet démontre

Architecture IA multi-agents (39 agents d'exploitation specialises)Orchestration par machines a etats LangGraphIngenierie de workflows durables (Temporal)Modelisation en base de donnees graphe (graphe de connaissances Neo4j)Integration de scanners de securite et normalisation des sortiesStreaming en temps reel (SSE)Conformite reglementaire DORA TLPT et NIS2Ingenierie de plateforme full-stack (FastAPI + Next.js)Orchestration et fallback multi-LLMConception d'infrastructure Docker (14 services)Generation automatisee de rapportsMethodologie de securite offensive