
Une suite SOC personnelle Windows construite en PowerShell — surveille les connexions réseau, l'utilisation des ressources, les tâches planifiées et les événements d'alimentation avec classification de sévérité et détection de base.
Un centre des opérations de sécurité (SOC) personnel construit de toutes pièces lors d'un programme de reconversion en Anwendungsentwicklung. Cette suite surveille un poste Windows pour détecter les anomalies réseau, les pics de ressources, l'exécution de processus, les modifications du registre, l'activité du journal des événements de sécurité, les changements de tâches planifiées, les requêtes DNS et les événements d'alimentation — enregistrant le tout dans des fichiers structurés pour une analyse hebdomadaire et une corrélation via un moteur Python.

Tableau de bord Flask monopage. Les 12 collecteurs + moteur de corrélation actifs, moniteur de ressources en direct, flux de connexions sortantes, tuiles d'événements de collecteur et alertes du moteur en continu.
Construit comme un projet d'apprentissage pratique en parallèle d'une reconversion formelle en informatique, cette suite applique des concepts SOC réels — collecte de référence, détection d'anomalies, classification de sévérité, agrégation de logs et corrélation multi-sources — à une machine Windows personnelle. Le processus de conception était hostile dès le départ : chaque phase a été testée sous contrainte contre une analyse d'équipe rouge avant la construction de la suivante, avec 48 règles de corrélation définies à partir de ces résultats guidant l'architecture du moteur Python.
Le développement est suivi dans roadmap.md — état actuel, plans de la phase 9 du moteur forensique, et objectifs de durcissement à long terme.
Le tableau de bord fonctionne comme un serveur Flask et nécessite une élévation d'Administrateur pour la détection des processus de collecteur. Créez un raccourci après le clonage :
Remplacez C:\path\to\SOC par votre chemin d'installation réel.
3. Nommez-le : SOC Dashboard
4. Faites un clic droit sur le raccourci → Propriétés → Avancé → cochez Exécuter en tant qu'administrateur
5. Cliquez sur OK
Le raccourci démarre Flask, attend qu'il soit prêt, puis ouvre le navigateur automatiquement. Si Flask est déjà en cours d'exécution, il ignore le démarrage et ouvre le navigateur directement. Les points de statut s'afficheront en gris si le raccourci est exécuté sans élévation Administrateur.
Le tableau de bord impose une séquence de démarrage/arrêt propre afin que les vérifications de l'Auditeur (contrôle d'intégrité du matin, validation de la chaîne de hachage du soir) s'exécutent toujours dans l'ordre.

Tous les battements de cœur des collecteurs sont rouges (fichiers de santé manquants ou arrêtés). Le bouton Arrêter le tableau de bord est masqué — le tableau de bord n'autorisera pas l'arrêt tant que la fin de journée n'aura pas été exécutée.

Le début de journée exécute la vérification matinale de l'Auditeur (vérification des journaux SHA256, validation de la chaîne de hachage des archives) et lance les 12 collecteurs ainsi que le moteur de corrélation. Les battements de cœur deviennent verts au fur et à mesure que chaque collecteur signale.

La fin de journée arrête tous les collecteurs en séquence et exécute la vérification du soir de l'Auditeur. Les points des collecteurs restent verts pendant que la séquence s'exécute ; la ligne de statut affiche Exécution de l'Auditeur du soir…

Une fois l'audit du soir terminé, tous les points des collecteurs passent au rouge, la ligne de statut indique Audit du soir terminé. Arrêt sécurisé., et le bouton Arrêter le tableau de bord apparaît — cliquer dessus termine proprement le processus Flask.

L'onglet du navigateur doit être fermé manuellement (les navigateurs n'exposent pas d'API de fermeture aux processus externes).
Les tuiles d'événements des collecteurs affichent les événements les plus récents avec leur niveau de sévérité par source. Le flux d'alertes du moteur diffuse en temps réel les résultats corrélés du moteur Python, avec le numéro de la règle, le score de confiance, la chaîne de preuves complète et le hachage SHA256 de la preuve.

Exemple : Règle 35 (Lecture brute de disque) déclenchée sur powershell.exe ouvrant un handle brut vers \Device\HarddiskVolume3, et Règle 31 (Anomalie de chargement DLL) signalant des DLL de Defender chargées depuis un chemin accessible en écriture par l'utilisateur. Les deux avec provenance complète du processus et hachages de fichiers.
La suite suit une architecture à trois couches :
Couche de collecte — Collecteurs PowerShell qui s'exécutent en continu en arrière-plan, chacun surveillant une source de données spécifique et écrivant des entrées de journal structurées avec niveau de sévérité. Tous nécessitent une élévation Administrateur.
Couche d'analyse — Scripts analystes PowerShell qui analysent les journaux collectés et génèrent des rapports de synthèse hebdomadaires. Exécutés en tant qu'utilisateur standard.
Moteur de corrélation (Phase 7 — terminée) — Moteur Python qui ingère tous les journaux des collecteurs, normalise les événements vers un schéma commun, et exécute une corrélation basée sur des règles et des scores de risque sur tous les flux de données. Trois programmes :
Définies par analyse d'équipe rouge en plusieurs rounds (voir Documentation). Mises en œuvre en Phase 7.
Tous les collecteurs utilisent un système de sévérité cohérent à quatre niveaux :
Tous les journaux suivent un format cohérent pour la compatibilité avec l'analyseur Python :``` [yyyy-MM-dd HH:mm:ss] [SEVERITY] Event details
**Structure du dépôt :**```
home_SOC_suite/
├── Analysts/ — PowerShell analyst scripts
├── Collectors/ — PowerShell collector scripts
├── Dashboard/ — Flask single-page SOC dashboard (Phase 8)
│ ├── app.py — Flask server, all routes, process detection, DB reads
│ ├── Launch_Dashboard.ps1 — Launcher: checks if Flask running, starts it, opens browser
│ ├── templates/
│ │ └── index.html — Single-page dashboard layout
│ └── static/
│ ├── style.css — Dark terminal aesthetic, severity colours, bar graph tiers
│ └── dashboard.js — All polling, Start Day / End Day sequence, session alert counter
├── Engine/ — Python correlation engine
│ ├── engine.py — Main loop and orchestration
│ ├── log_parser.py — Collector log ingestion
│ ├── normalizer.py — Event normalisation to canonical schema
│ ├── correlator.py — Correlation rules engine
│ ├── alert_manager.py — Alert deduplication, flood detection, log writing
│ ├── db.py — SQLite operations (batch ingest, query, retention)
│ ├── health_db.py — Heartbeat SQLite store (collector_status, heartbeats tables)
│ ├── config.py — All thresholds and time windows in one place
│ ├── test_parser.py — Log parser test suite (7 tests)
│ ├── test_normalizer.py — Normaliser test suite (32 tests)
│ └── test_correlator.py — Correlator test suite (135 tests)
└── Documentation/ — Research documents, red team analysis, and dashboard screenshots
Généré à l'exécution (non suivi dans le dépôt):``` Logs/ — Active collector log files │ └── Archives/ — 7-day rotated log archives Reports/ — Weekly analyst report output Config/ — Baseline JSON files and Sysmon config Engine/hocsoc.db — SQLite operational database Engine/hocsoc_health.db — Heartbeat and collector status store (engine correlation use only)
---
## Langues de système d'exploitation prises en charge
Steward détecte automatiquement le chemin de compteur de performance CPU correct pour les
langues de système d'exploitation suivantes :
| Langue | Chemin du compteur |
|---|---|
| Anglais | \Process(*)\% Processor Time |
| Allemand | \Prozess(*)\Prozessorzeit (%) |
| Français | \Processus(*)\% temps processeur |
| Espagnol | \Proceso(*)\% de tiempo de procesador |
| Italien | \Processo(*)\% Tempo processore |
| Portugais | \Processo(*)\% de Tempo do Processador |
| Russe | \Процесс(*)\% загруженности процессора |
| Chinois (simplifié) | \Process(*)\% Processor Time (généralement anglais) |
Pour ajouter la prise en charge d'une autre langue, ajoutez le chemin de compteur localisé au
tableau `$PathsToTry` dans la fonction `Get-WorkingCounterPath` de `Steward.ps1`.
---
## Documentation & Recherche
Le dossier `Documentation/` contient l'intégralité du dossier de recherche et de planification qui a
guidé la conception de cette suite. La suite a été construite de manière adversarial — chaque couche
a été planifiée contre un modèle de menace avant d'être construite, et testée sous stress contre
une analyse d'équipe rouge avant que la couche suivante ne soit commencée.
| Document | Objectif |
|---|---|
| `home_soc_pre_coding_architecture_guide.pdf` | Cadre décisionnel pré-construction. Modèle de données canonique, modèle de confiance, cycle de vie de base, stratégie de test et opportunités de validation croisée entre collecteurs. Écrit avant la moindre ligne de code. |
| `Home_Soc_Architecture_And_Engine_Design.pdf` | Spécification de l'architecture cible. Conception du moteur Python à trois programmes, schéma SQLite, modèle de détection hybride (règles déterministes + score de risque), logique de promotion des alertes. |
| `HomSOC_Implementation_Guide.pdf` | Plan de construction phase par phase. Code squelette pour tous les collecteurs, calendrier de travail hebdomadaire, modèles de référence rapide PowerShell. Le manuel de construction pour la couche PowerShell. |
| `RedTeam_Analysis_HomSOC_Final.pdf` | Référence principale de l'équipe rouge. 11 rounds adversariaux (Claude + Gemini + simulations d'engagement en direct), les 26 règles de corrélation avec la logique de détection complète, résultats de contournement et mesures d'atténuation appliquées à la construction. |
| `Home_SOC_Red_Team_Analysis_Pro.pdf` | Équipe rouge architecturale. 11 scénarios d'attaque ciblant les faiblesses structurelles : empoisonnement de la ligne de base, contournement de la corrélation, inondation par bruit, suppression du collecteur, falsification des archives, injection de logs, attaques par rejeu et abus d'identité. |
| `Home_SOC_Red_Team_Whitepaper.pdf` | Résumé exécutif. Tableau complet des scénarios d'attaque, comparaison du système (base vs renforcé), principales améliorations architecturales et aperçu de la conception du modèle de détection. |
---
## Fonctionnalités clés
- **Conception adversarial** — 48 règles de corrélation définies grâce à une analyse
multi-tours de l'équipe rouge avant que le moteur Python ne soit construit. La logique de détection
est ancrée dans des chaînes d'attaque réelles, pas dans des scénarios hypothétiques
- **Collecte de la ligne de base comportementale** — tous les collecteurs construisent des lignes de base
au fil du temps, permettant la détection d'anomalies par rapport à la normale observée plutôt qu'à des règles statiques
- **Surveillance géolocalisée** — connexions sortantes, connexions entrantes,
adresses IP source d'authentification et connexions DoH suivies par pays avec
alerte TELEMETRY_GAP en cas d'échec géographique
- **Empreinte des processus** — chaque événement réseau, port, processus et authentification
est enregistré avec le chemin complet du processus, détectant les attaques par usurpation et LOLBin
- **Auto-protection de la suite** — Warden surveille tous les scripts et configurations via
SHA256 FIM avec une chaîne de protection à trois niveaux : intégrité du manifeste, tâche
planifiée externe et surveillance de la tâche CityGuard
- **Liste blanche Zero-Trust** — toutes les listes blanches commencent vides. Une collecte de
ligne de base de 30 jours précède toute exception
- **Logs balisés par sévérité** — entrées de log structurées conçues pour la compatibilité
avec l'analyseur Python et l'intégration future SIEM
- **Rotation des logs sur 7 jours** — archivage automatique avec vérification SHA256 et
contrôles d'intégrité de la chaîne de hachage d'archive aux bornes matin/soir via Auditor.ps1
- **Compatibilité Windows multilingue** — chemins de compteurs de performance
détectés automatiquement sur 8 langues de système d'exploitation au démarrage
- **Tableau de bord SOC sur une seule page** — visibilité en direct basée sur Flask remplaçant toutes
les fenêtres PowerShell individuelles. Inclut le lanceur de suite (Start Day / End Day),
le moniteur de ressources Steward en direct, le flux de connexion Sentinel, des points de battement
à trois états (vert actif / ambre non démarré / rouge arrêté — lus directement à partir des
fichiers JSON de santé du collecteur, indépendamment de l'état du moteur), des cartes d'événements
SUSPICIOUS/CRITICAL, un flux d'alertes du moteur défilant, un compteur d'alertes de session, et une
génération de rapport hebdomadaire en un clic. End Day arrête tous les collecteurs et exécute la
borne Auditor du soir — un bouton Shutdown Dashboard apparaît alors pour terminer proprement le
processus Flask. L'onglet du navigateur doit être fermé manuellement (les navigateurs n'exposent pas
d'API de fermeture aux processus externes)
---
## État actuel — Phase 8 terminée
Le moteur de corrélation Python est construit et fonctionne en direct contre les 12 collecteurs,
y compris SysmonWatcher (événements de niveau noyau Sysmon).
**Pipeline du moteur :**
`log_parser.py` → `normalizer.py` → `correlator.py` → `alert_manager.py`
Toutes les étapes d'ingestion, de normalisation et de corrélation utilisent des transactions SQLite
par lots. 174 tests dans trois suites de tests — tous réussis.
**Règles implémentées :** 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 16, 17, 18, 21, 22, 41, 42,
43, 44, 45, 46, 47, 48 (corrélation à événement unique de niveau 1 et corrélation fenêtrée de niveau 2)
et règles 28–39 (événements noyau Sysmon via SysmonWatcher). Règles 12, 14, 15, 20 reportées au niveau 4
(nécessitent 30 jours de données de ligne de base). Règles 23, 24, 25 bloquées en attente de collecteurs spécialisés.
**Modèle de détection :** Hybride — règles déterministes pour les chaînes d'attaque claires,
score de risque pour les signaux faibles cumulatifs, alertes de visibilité pour le silence du collecteur
et la dégradation de la qualité d'ingestion.
**Prochaines phases :**
| Phase | Programme | Statut |
|---|---|---|
| 8 | Tableau de bord SOC — visibilité en direct sur une seule page Flask | Terminée |
| 9 | Moteur forensique — investigation post-événement, banque de preuves en ajout seulement | Planifiée |
| 9 | Tableau de bord forensique — conclusions résumées, génération de rapports, navigation dans les preuves | Planifiée |
Voir [`roadmap.md`](https://github.com/nate-ryan-7690/home_soc_suite/blob/HEAD/roadmap.md) pour le calendrier de développement complet.
---
## Alertes bruyantes connues — avant durcissement
Sur une installation fraîche, plusieurs types d'alertes se déclencheront régulièrement jusqu'à ce qu'un
durcissement spécifique à la machine soit appliqué. Celles-ci sont attendues et ne représentent pas de véritables détections.
| Collecteur | Alerte | Cause |
|---|---|---|
| Sentinel | CRITICAL environmental violation | Tout logiciel tiers installé en dehors des chemins de zone de confiance par défaut (Windows, Program Files) — clients de synchronisation cloud, applications de communication et utilitaires fournisseurs qui s'installent dans AppData sont des sources courantes |
| Sentinel | SUSPICIOUS TELEMETRY_GAP | Les adresses IPv6 de bouclage et de lien local échouent à la recherche de géolocalisation — corrigé dans la version actuelle |
| SysmonWatcher | SUSPICIOUS/CRITICAL sur les règles 31, 33, 34 | Les logiciels antivirus et de sécurité des terminaux effectuent régulièrement des lectures LSASS, des lectures de disque brut et chargent des DLL depuis des chemins accessibles en écriture par l'utilisateur dans le cadre de leur fonctionnement normal |
| SysmonWatcher | SUSPICIOUS sur la règle 28 | Les outils de développement qui s'attachent aux processus du navigateur pour le débogage déclencheront la règle d'attachement du débogueur de navigateur |
| Bulwark | SUSPICIOUS Échecs GeoIP | Les connexions sur les plages IP privées et réservées ne peuvent pas être géolocalisées — produit TELEMETRY_GAP jusqu'à ce qu'elles soient mises sur liste blanche |
| Bloodhound | SUSPICIOUS Détection DGA | Les requêtes DNS de courte durée ou à faible nombre d'échantillons déclenchent des vérifications d'entropie avant que la ligne de base glissante ne se stabilise |
| Warden | SUSPICIOUS MANIFEST_MISSING | Aucun manifeste FIM n'existe lors de la première exécution — construisez avec `.\Warden.ps1 -BuildManifest` après la configuration initiale |
| Warden | SUSPICIOUS COLLECTOR_DOWN | Les collecteurs non encore déployés n'ont pas de fichier de battement de cœur — attendu jusqu'à ce que la suite complète soit en cours d'exécution |
| DoH_Detector | CRITICAL pour le DoH du navigateur | Les navigateurs configurés pour utiliser DNS-over-HTTPS se déclencheront jusqu'à ce qu'ils soient ajoutés à la liste des processus autorisés |
Le durcissement spécifique à la machine (listes de processus de confiance, listes blanches de chemins,
entrées connues sûres) est appliqué localement et n'est pas inclus dans ce dépôt.
---
## Remarques
- Définissez `$RootPath` dans chaque script sur le dossier où vous avez installé la suite SOC.
Par défaut, `Desktop\SOC`
- Les scripts nécessitent que la stratégie d'exécution PowerShell soit définie sur Bypass
- Les scripts de collecteur nécessitent une élévation Administrateur pour une visibilité système complète
- Les scripts d'analyste s'exécutent en tant qu'utilisateur standard
- La géolocalisation est fournie par le niveau gratuit d'ip-api.com
- Le journal des événements du client DNS doit être activé avant d'exécuter Bloodhound.ps1 :
`wevtutil sl "Microsoft-Windows-DNS-Client/Operational" /e:true`
---
## Contexte d'apprentissage
Construit lors de la reconversion Fachinformatiker Anwendungsentwicklung, Allemagne 2026.
Vise une carrière dans la cyberdéfense et le renseignement sur les menaces.
Construit avec l'aide de l'IA comme outil d'apprentissage. Chaque décision de conception,
session de débogage et choix architectural a été motivé par le développeur
avec une compréhension complète des concepts sous-jacents.
| Programme | Phase | Rôle |
|---|
| Moteur de corrélation | 7 — terminée | Ingestion, normalisation, corrélation, alerte (stockage opérationnel SQLite) |
| Tableau de bord SOC | 8 — terminée | Visibilité en direct — santé des collecteurs, alertes, chaînes de preuves (Flask) |
| Moteur forensique | 9 — planifiée | Investigation post-événement — super timelines, lignée des processus, analyse de balises, audits de persistance, banque de preuves à ajout seul |
| Tableau de bord forensique | 9 — planifiée | Conclusions forensiques résumées — statut codé par couleur, génération de rapports, navigation dans les preuves |
| Phase | Script | Surnom | Fonction |
|---|
| 1 | Sentinel.ps1 | Network Watchdog | Connexions TCP sortantes avec géolocalisation, vérification du chemin du processus et suivi cumulé des transferts |
| 1 | Bulwark.ps1 | Night's Watch | Ports d'écoute entrants — comparaison de base de référence, détection de ports nouveaux/fermés, anomalies de géolocalisation |
| 1 | Steward.ps1 | Quartermaster | CPU, RAM et E/S disque par processus à l'aide des compteurs de performance Windows avec détection automatique de 8 langues |
| 1 | CityGuard.ps1 | City Guard | Ajouts, suppressions et modifications de tâches planifiées — détection de modifications d'actions et de déclencheurs |
| 1 | Watchman.ps1 | Watchman | Événements d'alimentation — démarrage, veille, réveil, arrêt inattendu et activité après les heures de travail |
| 2A | Registry_Warden.ps1 | — | Clés de démarrage du registre, RunOnce, base de référence et comparaison des services, vérification d'intégrité RID SAM |
| 2B | Harbinger.ps1 | — | Moniteur de création de processus basé sur les événements WMI/CIM — détection de chemin à haut risque, suivi du processus parent |
| 3 | Bloodhound.ps1 | — | Moniteur de requêtes DNS — détection DGA via entropie de Shannon, signalement d'enregistrements TXT, détection de pics de volume ICMP |
| 4 | Warden.ps1 | — | Chien de garde de la suite — FIM SHA256 des scripts, régression de taille de journal, santé des collecteurs, indicateur de maintenance, tâche planifiée d'auto-surveillance |
| 5 | SecEventLog.ps1 | — | Journal des événements de sécurité Windows — anomalies de connexion, manipulation de comptes, élévation de privilèges, installation de services, détection de force brute |
| 6 | DoH_Detector.ps1 | — | Détecteur d'évasion DNS-over-HTTPS — connexions TCP vers 28 adresses IP de résolveurs DoH connues à partir de processus non autorisés |
| 7 | SysmonWatcher.ps1 | — | Moniteur d'événements au niveau noyau Sysmon — injection de processus, accès LSASS, lectures brutes de disque, chargements de pilotes non signés, persistance WMI et attachement de débogueur de navigateur (22 identifiants d'événements) |
| Script | Surnom | Fonction |
|---|
| Investigator.ps1 | Rapporteur d'audit | Analyse hebdomadaire des journaux de connexions sortantes de Sentinel |
| Crow.ps1 | Commandant en chef | Analyse hebdomadaire des journaux de ports entrants de Bulwark |
| Ledger.ps1 | Maester | Analyse hebdomadaire des journaux de ressources de Steward avec détection de tendance RAM |
| Castellan.ps1 | Châtelain | Analyse hebdomadaire des journaux de tâches planifiées de CityGuard |
| Auditor.ps1 | — | Audit d'intégrité de vérification matin/soir — vérification SHA256 des journaux, validation de la chaîne de hachage des archives |
| # | Règle | Sévérité | Sources |
|---|
| 1 | Fuite de données suspectée | HIGH | Steward + Sentinel |
| 2 | Balise C2 suspectée | HIGH | Sentinel + Bulwark |
| 3 | Persistance + rappel C2 | CRITICAL | CityGuard + Sentinel |
| 4 | Intrusion après les heures de travail | CRITICAL | Watchman + Sentinel |
| 5 | Préparation des données | HIGH | Bulwark + Steward |
| 6 | Activité réseau LOLBin | CRITICAL | Sentinel |
| 7 | Évidement de processus suspecté | CRITICAL | Harbinger + Sentinel |
| 8 | Évasion DoH suspectée | CRITICAL | DoH_Detector |
| 9 | Persistance WMI suspectée | HIGH | Harbinger + CityGuard |
| 10 | Manipulation de compte | CRITICAL | SecEventLog |
| 11 | Motif de fuite en rafale | HIGH | Sentinel |
| 12 | Processus persistant sous-seuil | SUSPICIOUS | Sentinel + Steward |
| 13 | Accès initial suspecté | CRITICAL | Harbinger + Sentinel |
| 14 | Anomalie de binaire de confiance | SUSP→CRIT | Sentinel |
| 15 | Détecteur de gigue statistique | HIGH | Sentinel |
| 16 | Violation d'intégrité contextuelle | CRITICAL | Harbinger + Sentinel |
| 17 | Détournement d'identité / RID | CRITICAL | Registry_Warden + SecEventLog |
| 18 | Santé du moteur de corrélation | MEDIUM | Python Core |
| 19 | Auto-protection / FIM des scripts | CRITICAL | Warden |
| 20 | Dérive temporelle statistique | MEDIUM | Steward + Sentinel |
| 21 | Verrouillage de l'interpréteur / BYOI | HIGH | Harbinger |
| 22 | Anomalie API cloud | HIGH | Sentinel |
| 23 | Détecteur d'injection HID | CRITICAL | Événements de périphérique WMI |
| 24 | Evil Twin / Fantôme WiFi | CRITICAL | Moniteur réseau |
| 25 | Voleur de focus / Détournement de fenêtre | HIGH | API Win32 |
| 26 | Vérification d'intégrité de visite | HIGH | Tous les collecteurs |
| 27 | Accès initial différé | CRITICAL | Harbinger + Sentinel (liste de surveillance SQLite) |
| 28 | Attachement de débogueur de navigateur | CRITICAL | SysmonWatcher (Event ID 10) |
| 29 | Injection de processus noyau | CRITICAL | SysmonWatcher (Event ID 8) |
| 30 | Chargement de pilote non signé | CRITICAL | SysmonWatcher (Event ID 6) |
| 31 | Chargement d'image suspect | SUSPICIOUS | SysmonWatcher (Event ID 7) |
| 32 | Liaison d'abonnement WMI | CRITICAL | SysmonWatcher (Event IDs 19/20/21) |
| 33 | Accès LSASS suspecté | CRITICAL | SysmonWatcher (Event ID 10) |
| 34 | Lecture brute de disque | CRITICAL | SysmonWatcher (Event ID 9) |
| 35 | Fichier exécutable créé | SUSPICIOUS | SysmonWatcher (Event ID 11) |
| 36 | Fournisseur AMSI altéré | CRITICAL | SysmonWatcher (Event ID 12) |
| 37 | Tube nommé suspect | SUSPICIOUS | SysmonWatcher (Event IDs 17/18) |
| 38 | Exécutable téléchargé | HIGH | SysmonWatcher (Event ID 15) |
| 39 | Évidement de processus confirmé | CRITICAL | SysmonWatcher (Event ID 25) |
| 40 | Charge CPU persistante sous-seuil | SUSPICIOUS | Steward + Sentinel |
| 41 | Exploitation de fenêtre aveugle | HIGH/CRITICAL | Python Engine (collecteur DOWN + événements concurrents) |
| 42 | Suppression coordonnée de collecteurs | CRITICAL | Python Engine (≥2 collecteurs simultanément DOWN) |
| 43 | Lancement inattendu du moteur de script | SUSPICIOUS | Harbinger (parent connu comme malveillant → moteur de script) |
| 44 | Script provenant d'un chemin à haut risque | HIGH | Harbinger (43 + binaire du moteur dans un chemin accessible en écriture par l'utilisateur) |
| 45 | Rappel réseau du moteur de script | CRITICAL | Harbinger + Sentinel (43 + connexion sortante) |
| 46 | Chaîne d'exécution complète de la chaîne d'approvisionnement | CRITICAL | Harbinger + Sentinel (mauvais parent + dépôt + rappel) |
| 47 | Exécution obscurcie / encodée | HIGH | Harbinger (combinaison -EncodedCommand / Hidden+Bypass) |
| 48 | Paire parent-enfant connue comme malveillante | CRITICAL | Harbinger (paires spécifiques à haute confiance, aucune utilisation légitime) |
| Niveau | Couleur | Signification |
|---|
| OK | Vert | Correspond à la base de référence connue, aucune action nécessaire |
| UNKNOWN | Jaune | Pas encore basé sur une référence, surveiller les motifs |
| SUSPICIOUS | Jaune foncé | Anomalie détectée, enquêter |
| CRITICAL | Rouge | Seuil dépassé, révision immédiate |