Skip to content

v0.3.1 — Security Hardening

Choose a tag to compare

@chrlesur chrlesur released this 24 Mar 09:10
· 26 commits to main since this release

🔐 Security Hardening

Security

  • §3.6 Timing attack bootstrap key — Remplacement de == par hmac.compare_digest() pour la comparaison de la bootstrap key admin dans middleware.py et admin/api.py. Élimine le canal auxiliaire de timing permettant de deviner la clé caractère par caractère
  • §3.7 Bootstrap key par défaut — Ajout d'une vérification au démarrage (server.py) : affichage d'un avertissement ⚠️ CRITIQUE si ADMIN_BOOTSTRAP_KEY n'a pas été modifiée depuis la valeur par défaut
  • §3.8 Token en query string supprimé — Le support ?token= a été retiré. Seul le header Authorization: Bearer <token> est désormais accepté
  • §3.9 Audit persisté sur stderr — Chaque entrée du journal d'audit est dupliquée sur stderr en JSON structuré pour collecte par Docker logs → Loki/ELK/CloudWatch

Added

  • _security_checks() — Vérification bootstrap key et sandbox au démarrage
  • Warning si SANDBOX_ENABLED=false (exécution locale = RCE sur l'hôte)
  • Rapport d'audit enrichi (SECURITY_AUDIT.md) avec §3.6-§3.9 et tableau historique

Fixed

  • Tests WAF corrigés — ciblaient /admin/api/health (sans WAF) au lieu de /health (avec Coraza)

Tests

  • 138/138 PASS — 0 FAIL, 0 SKIP