Aller au contenu

Boucle de retour

La boucle de retour est le mécanisme d'auto-amélioration de HYDRA. Toutes les 60 secondes, les données de sessions accumulées sont analysées et réinjectées dans le honeypot sous forme d'ajustements — nouveaux leurres, prompts affinés et personas adaptés.

Fonctionnement

graph LR
    S[Sessions HYDRA] --> A[SessionAnalyzer]
    A --> F[FeedbackEngine]
    F --> P[Profils d'attaquants]
    F --> M[Métriques agrégées]
    F --> PP[Patches de prompt]
    F --> L[LureGenerator]
    L --> FS[FeedbackStore]
    FS --> |feedback.yaml| H[HYDRA FeedbackConsumer]
    H --> |mise à jour runtime| S

Composants du pipeline

SessionAnalyzer

Convertit les logs JSONL bruts de HYDRA en deltas PDX structurés. Chaque session est parsée en événements individuels avec tags MITRE, données temporelles et métadonnées de classification.

FeedbackEngine

Le module d'analyse central. Il traite les sessions accumulées pour produire :

Profils d'attaquants — Le clustering comportemental regroupe les sessions par patterns TTP. Une session focalisée sur la récolte de credentials (cat /etc/shadow, find *.pem) est profilée différemment d'une session de reconnaissance réseau (ss -tlnp, ip addr).

Métriques agrégées — Comptages de fréquence des TTPs, commandes, tactiques MITRE et patterns de credentials à travers toutes les sessions. Ces métriques pilotent la priorisation des leurres.

Patches de prompt — Ajustements suggérés au prompt système du LLM basés sur le comportement observé des attaquants. Si les attaquants déclenchent fréquemment des réponses incohérentes pour une catégorie de commandes spécifique, le patch ajoute du contexte.

LureGenerator

Traduit les métriques agrégées en changements concrets du système de fichiers :

  • Nouveaux fichiers leurres placés dans les répertoires fréquemment explorés
  • Contenu de credentials mis à jour correspondant aux patterns de ciblage observés
  • Timestamps de fichiers ajustés pour correspondre à des dates de modification réalistes
  • Nouvelles entrées dans .bash_history reflétant l'« activité quotidienne » du persona

FeedbackConsumer

Tourne dans HYDRA et poll feedback.yaml toutes les 60 secondes. Quand des changements sont détectés :

  1. Les nouveaux fichiers leurres sont injectés dans le blueprint VFS
  2. Les patches de prompt sont ajoutés au prompt système du LLM
  3. Les poids des personas sont ajustés selon les métriques d'engagement
  4. Les changements prennent effet pour la prochaine session — les sessions actives ne sont jamais perturbées

Lancer l'orchestrateur

# One-shot : analyser les logs actuels et générer le feedback
python -m pdx.pipeline.orchestrator --logs-dir logs/ --once

# Mode watch : surveiller continuellement les nouvelles sessions
python -m pdx.pipeline.orchestrator --logs-dir logs/ --watch

# Mode auto : déclenché par l'AutoTraining de HYDRA
# (configuré dans hydra_link.yaml)