Aller au contenu

📊 SENTRY — Rapport d'avancement hebdomadaire [Semaine 03/9]

Date : 06/10/2026 · Auteur : Godwill FOKA (assisté par Claude) · Jalon cible : clÎture de M7, ouverture de M8

1. Résumé exécutif

main est Ă  jour : la baseline v0.1.1 et le durcissement de production M7 (lots 1 Ă  3) y sont fusionnĂ©s, et v0.1.1 est publiĂ©e (tag, release, image Docker). Le dĂ©pĂŽt GitHub devient un miroir public complet (ADR-015) : CI, documentation en ligne, image ghcr.io. Fait marquant : la premiĂšre validation sur donnĂ©es rĂ©elles automatisĂ©e — NVD et EPSS, jamais joignables depuis le bac Ă  sable d'audit, ont rĂ©pondu ; le jalon M3 est atteint et le scĂ©nario SOC passe 48/48. Elle a rĂ©vĂ©lĂ© un bug rĂ©el (dĂ©couverte TAXII MITRE ATT&CK), corrigĂ© le jour mĂȘme. Reste pour clore M7 : la prĂ©production sur un VPS europĂ©en. DĂ©cision en attente : ADR-014.

2. Détail technique des tùches traitées

Checkup global (état réel des trois branches, CI, documentation, dette ouverte) :

# Constat Gravité Traitement
C1 release/v0.1.1 et M7 non fusionnĂ©s, pas de tag, main en 0.1.0 ÉlevĂ©e fusion, tag v0.1.1, main en 0.2.0.dev0
C2 Dette D3 : scĂ©nario d'acceptation jamais exĂ©cutĂ© en CI ; NVD et EPSS jamais constatĂ©s ÉlevĂ©e workflow « Validation rĂ©elle » hebdomadaire
C3 Bug : API roots TAXII relatives refusées (/api/v21/ du serveur MITRE) Moyenne urljoin + test ; constaté corrigé en réel
C4 Test réseau DigitalSide toujours exigé alors que la source est hors ligne depuis le 29/09 Faible échec attendu non strict (un XPASS signalera son retour)
C5 Version déclarée à deux endroits (__init__.py, config.py) Faible source unique
C6 Badges du README vers des pipelines GitLab privés (images cassées) Faible badges GitHub (CI, validation, docs, release, image)
C7 Actions GitHub en Node 20 (dépréciées) ; ubuntu-latest bascule vers Ubuntu 26 le 19/10 Faible actions Node 24, runners ubuntu-24.04, Dependabot
C8 CORS_ORIGINS absent de .env.example Faible documenté
C9 Production : impossible d'utiliser une image publiée ; image sans métadonnées OCI Faible SENTRY_IMAGE, labels OCI

TĂąches :

  • [x] Fusion — feature/m7-production-hardening → main (commit de fusion Merge branch 'feature/m7-production-hardening' into 'main'), sans conflit.
  • [x] Release v0.1.1 — tag sur release/v0.1.1, release GitHub (notes tirĂ©es du CHANGELOG), image ghcr.io/godwillfoka/cyberillsec-sentry:0.1.1 et :latest.
  • [x] CI GitHub — miroir de .gitlab-ci.yml : ruff, mypy, pytest 3.12/3.14 sur PostgreSQL 16 et Redis 7, migrations aller-retour, image, Compose, pip-audit, bandit ; rĂ©sultats en annotation.
  • [x] Validation rĂ©elle (validation-reelle.yml) — instance complĂšte, sources rĂ©elles, tests live, dĂ©couverte TAXII MITRE, scĂ©nario SOC, sentry status ; chaque lundi, sur tag, Ă  la demande.
  • [x] DĂ©ploiement GitHub — documentation MkDocs Material sur GitHub Pages (https://godwillfoka.github.io/cyberillsec-sentry/), image GHCR (:edge depuis main), releases automatiques (publication.yml).
  • [x] Correctif TAXII (C3) et test DigitalSide (C4).
  • [x] Documentation — README d'accueil refondu (logo, Ă©tat du projet, dĂ©ploiement, documentation), ADR-015, feuille de route et guide d'exploitation Ă  jour, CHANGELOG.
  • [ ] PrĂ©production VPS UE (critĂšre de sortie M7 lot 3) — hors de portĂ©e d'une session.
  • [ ] ADR-014 (plancher KEV, EPSS manquant) — dĂ©cision du porteur de projet.

3. Validation sur données réelles (GitHub Actions, 06/10/2026)

Mesure Résultat
Scénario SOC d'acceptation 48 / 48
CISA KEV 1 734 CVE
NIST NVD 2.0 (sans clé, 7 jours + CVE KEV) 9 132 CVE reçues, 9 056 créées
FIRST EPSS 8 800 scores, 97 % des CVE couvertes
Priorités P0 495 · P1 626 · P2 619 · P3 7 316
Flux IOC 4 sources saines (IPsum, C2IntelFeeds IP et domaines, abuse.ch Feodo), 3 865 IOC
Sources sous clé URLhaus, OTX, RedEye : DEGRADED (clé absente, attendu)
Découverte TAXII MITRE ATT&CK collections Enterprise, Mobile, ICS listées (aprÚs correctif C3)

Jalons constatés par sentry status :

Jalon État DĂ©tail
M1 Foundation ✅ schĂ©ma Ă  jour, API, rĂŽles, audit
M2 Threat Feeds ◐ ≄ 500 IOC ✔, ≄ 3 sources ✔ ; OTX ✘ et STIX ✘ faute de clĂ©s
M3 Moteur CVE ✅ atteint NVD < 24 h ✔, KEV ≄ 1 000 ✔, EPSS ≄ 90 % ✔, alerting ✔
M4 Incidents ✅ incident clos, 5 transitions tracĂ©es
M5 Dashboard ✅ synthĂšse, activitĂ©, 8 exports (scĂ©nario)
M6 Hunting ✅ 2 sessions, 4 correspondances

Observation : avec EPSS, 495 CVE atteignent P0 ; le 04/10, sans EPSS, aucune. Le diagnostic de l'ADR-014 est confirmé sur données réelles.

4. Analyse SWOT de la semaine

  • Forces : six modules et M7 dans main ; deux pipelines indĂ©pendants verts ; premier constat rĂ©el de NVD, EPSS et du jalon M3 ; image et documentation publiĂ©es.
  • Faiblesses : M2 dĂ©pend encore de clĂ©s absentes (OTX, RedEye) ; deux dĂ©pĂŽts Ă  synchroniser Ă  la main ; la prĂ©production n'a jamais tournĂ© plus de quelques minutes.
  • OpportunitĂ©s : la validation hebdomadaire mesure enfin la dĂ©rive des sources externes (DigitalSide, 502 ponctuels du serveur MITRE) ; la dĂ©couverte ATT&CK fonctionne, base de M10.
  • Menaces : sources publiques volatiles ; gitlab.com toujours inaccessible depuis les sessions d'assistance ; dĂ©rive possible entre GitLab et GitHub.

5. ProblÚmes rencontrés et solutions

Blocage Impact Solution adoptée Statut
PyPI refusé (403) dans le bac à sable du 06/10 Pas de tests locaux Tests exécutés sur GitHub Actions, résultats publiés en annotations Contourné
API roots TAXII relatives refusées Découverte MITRE ATT&CK impossible urljoin puis revalidation anti-SSRF Résolu
DigitalSide hors ligne depuis le 29/09 Test rĂ©seau toujours rouge Échec attendu non strict RĂ©solu
Workflow de validation déclenché seulement sur tag Jamais exécuté sur une branche Déclenchement aussi quand le workflow change Résolu
Serveur TAXII MITRE : HTTP 502 ponctuel Test live rouge une fois sur trois Non bloquant ; la commande CLI a rĂ©ussi dans la mĂȘme exĂ©cution Suivi
Pages GitHub désactivé Site non publiable Source « GitHub Actions » activée dans les paramÚtres Résolu

6. Métriques qualité

Indicateur Valeur Seuil
Couverture pytest 94 % (3.12) · 93 % (3.14) ≄ 80 %
Tests passants 438 / 438 (+ 4 réseau, hebdomadaires) 100 %
Conformité ruff OK (180 fichiers) 100 %
mypy --strict OK 0 erreur
pip-audit / bandit 0 vulnérabilité / 0 moyen ou haut 0
Scénario SOC sur données réelles 48 / 48 100 %
Commits du jour sur main 11 (dont la fusion M7) —
ADR 15 (ADR-015 ajoutĂ©) —

7. Prochaine semaine

  1. Synchroniser Kali et GitLab avec main (procédure ci-dessous).
  2. Ajouter les secrets GitHub OTX_API_KEY, NVD_API_KEY, TAXII_AUTH (RedEye) : la validation hebdomadaire constatera alors M2 en entier.
  3. Trancher l'ADR-014 (recommandation A + B + C).
  4. PrĂ©production VPS UE avec l'image publiĂ©e (SENTRY_IMAGE=
:latest, --no-build), SSL Labs ≄ A, 7 jours de collecte → clĂŽture de M7.
  5. Ouvrir M8 « Detection & Correlation ».

Synchronisation du poste Kali :

cd ~/Documents/cyberillsec-sentry
git fetch github --tags
git checkout main && git merge --ff-only github/main  # avance rapide, rien n'est perdu
git branch -f release/v0.1.1 github/release/v0.1.1
git push origin main release/v0.1.1 --tags            # GitLab rattrape GitHub
git branch -d feature/m7-production-hardening          # fusionnée : suppression sûre
git branch --merged main                               # autres branches fusionnées (dette D7)