đ 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 fusionMerge branch 'feature/m7-production-hardening' into 'main'), sans conflit. - [x] Release
v0.1.1â tag surrelease/v0.1.1, release GitHub (notes tirĂ©es du CHANGELOG), imageghcr.io/godwillfoka/cyberillsec-sentry:0.1.1et: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, testslive, 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 (
:edgedepuismain), 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.comtoujours 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¶
- Synchroniser Kali et GitLab avec
main(procédure ci-dessous). - Ajouter les secrets GitHub
OTX_API_KEY,NVD_API_KEY,TAXII_AUTH(RedEye) : la validation hebdomadaire constatera alors M2 en entier. - Trancher l'ADR-014 (recommandation A + B + C).
- 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. - 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)