Ir para o conteudo principal

Rapports de securite

Le centre de securite detecte les problemes. Les rapports de securite, eux, racontent l'histoire : comment la securite evolue dans le temps, quels problemes ont ete resolus, quels nouveaux risques sont apparus, et quel est le niveau de securite global. Chaque scan genere un rapport complet, analyse par Claude Sonnet (l'IA d'Anthropic), qui traduit les resultats techniques en recommandations concretes et comprehensibles --- meme pour un decideur non technique.

Page : /backoffice/security-reports | Sidebar : Section "SECURITE" (rouge) > Rapports securite

La page est une vue dediee full-width (en dehors du SecurityCenterPanel). La sidebar interne du Security Center redirige vers cette page au lieu d'afficher les rapports inline.


Score et note globale

Pour evaluer rapidement le niveau de securite sans lire l'integralite du rapport, chaque scan produit un score (0-100) et une note (A-F). C'est comme une note scolaire : elle resume la situation en un coup d'oeil, tout en invitant a consulter le detail pour comprendre les points a ameliorer.

NoteScoreInterpretationAction
A90-100Excellent --- securite robusteMaintenir, audit periodique
B75-89Bon --- quelques ameliorations possiblesPlanifier les corrections medium
C60-74Acceptable --- risques moderesCorriger les high dans la semaine
D45-59Insuffisant --- risques significatifsAction rapide sur les high/critical
E25-44Mauvais --- vulnerabilites multiplesRemediation urgente
F0-24Critique --- infrastructure compromiseIntervention immediate

Le score est calcule a partir du nombre et de la severite des findings ouverts. Les findings marques false_positive ou resolved sont exclus du calcul --- ils ont ete traites et ne doivent plus peser sur l'evaluation.


Analyse Claude enrichie

Un listing de findings bruts est difficile a interpreter : lequel est le plus urgent ? Quel est l'impact reel ? Que faut-il corriger en priorite ? C'est pourquoi chaque rapport est analyse par Claude Sonnet (claude-sonnet-4-20250514), qui genere un rapport structure de qualite professionnelle. Claude lit les findings, les croise, evalue leur impact et produit des recommandations priorisees.

Le modele, la temperature, les max_tokens, le timeout outils, le max findings et le system prompt sont configurables dynamiquement via /backoffice/ai-config onglet Audit Securite.

Les parametres sont charges via loadAgentConfig('security_audit') avec cache 5 minutes.

Structure du rapport enrichi

Le rapport genere par Claude couvre tous les aspects necessaires a une prise de decision eclairee :

SectionDescription
Grade et scoreNote A-F (badge couleur vert/ambre/rouge) + score /100
Niveau de risquecritical, high, medium ou low --- le niveau de risque global de l'infrastructure
Resume executifSynthese non-technique pour decision-makers (CEO, RSSI) --- l'essentiel en quelques phrases
Ventilation severitesCompteurs par niveau : critical, high, medium, low, info
Top findingsFindings classes par rang d'importance, expandables (voir detail ci-dessous)
Conformite OWASP Top 10Grille avec statut pass/warning/fail pour chaque categorie A01 a A10 (le referentiel mondial des risques web)
Points positifsElements de securite bien configures (ex: "HSTS correctement configure", "TLS 1.3 actif") --- important pour valoriser le travail deja fait
RecommandationsActions classees par priorite : immediate, court terme, moyen terme
Exposition RGPDAnalyse des risques lies aux donnees personnelles (important pour la conformite europeenne)
Notes infrastructureObservations techniques sur l'infra (Docker, Traefik, Cloudflare, etc.)
Faux positifs identifiesListe des faux positifs detectes par l'audit
Priorite prochain auditOutils/domaines a prioriser pour le prochain audit

Detail d'un finding dans le rapport

Chaque finding dans la section "Top findings" est detaille pour faciliter sa correction. L'objectif est qu'un developpeur puisse lire le finding et savoir exactement quoi faire, sans recherche supplementaire :

ChampDescription
RangPosition dans le classement par severite/impact
TitreDescription du finding
Severitecritical / high / medium / low / info
Outils confirmantListe des outils ayant detecte ce finding (un probleme confirme par plusieurs outils est plus fiable)
ImpactDescription de l'impact potentiel (ex : "un attaquant pourrait...")
Description detailleeExplication technique complete
Etapes de remediationListe ordonnee des actions correctives concretes
Code correctifSnippet de code si applicable (ex : header a ajouter dans la configuration)
ReferencesLiens OWASP/CWE (ex: "OWASP A01:2021", "CWE-79")
Effort estimeDuree estimee de la correction (ex: "30 min", "2h")
UrgenceNiveau d'urgence (ex: "immediate", "cette semaine")

Grille OWASP Top 10

L'OWASP Top 10 est la liste de reference des 10 risques de securite les plus critiques pour les applications web, mise a jour regulierement par la communaute mondiale de securite. Le rapport inclut une analyse de conformite pour chaque categorie :

CategorieDescription
A01:2021Broken Access Control (controle d'acces defaillant)
A02:2021Cryptographic Failures (failles cryptographiques)
A03:2021Injection (injection SQL, XSS, etc.)
A04:2021Insecure Design (conception non securisee)
A05:2021Security Misconfiguration (mauvaise configuration)
A06:2021Vulnerable and Outdated Components (composants vulnerables ou obsoletes)
A07:2021Identification and Authentication Failures (failles d'authentification)
A08:2021Software and Data Integrity Failures (integrite du code et des donnees)
A09:2021Security Logging and Monitoring Failures (monitoring insuffisant)
A10:2021Server-Side Request Forgery (SSRF)

Chaque categorie recoit un statut : pass (vert --- conforme), warning (ambre --- partiel) ou fail (rouge --- non conforme).


Statistiques des findings

Ces metriques donnent une vue quantitative du scan --- combien de problemes ont ete detectes, de quelle gravite, et combien d'outils ont fonctionne correctement :

MetriqueDescription
Total findingsNombre total de findings detectes lors du scan
Par severiteRepartition : critical, high, medium, low, info (barre coloree pour visualiser la proportion)
Par statutRepartition : open, acknowledged, false_positive, resolved
Outils executesNombre d'outils ayant complete leur scan avec succes
Outils en erreurNombre d'outils ayant echoue (timeout, erreur API, cle manquante, etc.)

Historique des rapports

La veritable valeur des rapports de securite emerge sur la duree : ils permettent de voir si la posture de securite s'ameliore, stagne ou se degrade. La page d'historique liste tous les rapports passes :

ColonneDescription
DateDate et heure du scan
Modecron (quotidien 03:30 UTC --- automatique), manual (lance depuis l'interface), post_deploy (apres deploiement)
NoteNote alphabetique obtenue (A-F) avec badge couleur
ScoreScore numerique (0-100)
OutilsNombre d'outils executes / echoues

Un clic sur une ligne ouvre le rapport complet pour cette date.


Lancer un audit manuel

Parfois, on veut un resultat immediat sans attendre le cron de 03:30 UTC --- par exemple apres avoir corrige un finding ou modifie une configuration. Voici la procedure :

  1. Sur la page Rapports, cliquer le bouton "Lancer un audit"
  2. L'audit execute les 19 outils en parallele (avec timeouts individuels par outil)
  3. Un polling toutes les 5 secondes affiche la progression en temps reel (combien d'outils ont termine)
  4. Claude Sonnet analyse les resultats et genere le rapport structure
  5. Le rapport apparait dans la liste avec le grade et le score

Suivi de la progression

L'objectif n'est pas simplement de detecter des problemes, mais de mesurer leur resolution. Le rapport inclut un comparatif avec le scan precedent pour voir ce qui a change :

IndicateurDescription
Findings resolusNombre de findings qui etaient open lors du scan precedent et sont maintenant resolved (bonne nouvelle !)
Nouveaux findingsFindings detectes pour la premiere fois dans ce scan (a investiguer)
Findings persistantsFindings toujours open depuis le scan precedent (n'ont pas encore ete corriges)
Evolution du scoreVariation du score par rapport au rapport precedent (ex : +5 points = amelioration, -3 points = regression)

Tendance sur 30 jours

Un graphique lineaire affiche l'evolution de la note de securite sur les 30 derniers jours. Cette vue est particuli erement precieuse pour les decideurs car elle permet d'identifier en un coup d'oeil :

  • Les ameliorations : remediation de findings critiques ayant fait monter la note (pic vers le haut)
  • Les regressions : nouvelles vulnerabilites detectees apres un deploiement (chute soudaine)
  • La stabilite : une note constante indique une posture de securite maitrisee
Nouveaux findings apres deploiement

Apres chaque deploiement, un audit automatique est declenche par deploy.sh. Si de nouveaux findings critical ou high apparaissent, ils sont vraisemblablement lies aux changements deployes. Consultez le changelog pour identifier les commits potentiellement responsables et corrigez rapidement.


Export PDF

Les rapports de securite ne servent pas qu'a l'equipe technique : ils peuvent etre partages avec la direction, un client, un partenaire ou un auditeur de conformite. L'export PDF permet de produire un document professionnel et autonome, lisible sans acces au backoffice.

Comment exporter

  1. Ouvrir un rapport de securite
  2. Cliquer le bouton "Exporter PDF" (icone document)
  3. Le PDF est genere cote client (dans le navigateur, sans envoyer les donnees a un serveur externe) et telecharge automatiquement

Contenu du PDF

Le PDF A4 portrait contient toutes les sections du rapport enrichi, mises en page pour l'impression :

Section PDFDescription
En-teteTitre "BeePass --- Rapport de securite", date du rapport, mode (cron/manuel/post_deploy)
GradeBadge couleur avec note A-F et score /100
Resume executifSynthese non-technique
Ventilation severitesBarre horizontale coloree (critical/high/medium/low/info) avec compteurs
Findings detaillesBlocs par finding : titre, severite couleur, description complete, etapes de remediation, code correctif, references externes, urgence
Grille OWASPA01-A10 avec statut pass/warning/fail et description (contenu complet)
RecommandationsActions classees par categorie et priorite (contenu complet)
Faux positifsSection dediee listant les faux positifs identifies
Next audit priorityOutils/domaines a prioriser pour le prochain audit
Footer"Genere par BeePass Security Center" + URL beepass.io

Dependances

  • jsPDF : generation PDF cote client (import dynamique, pas de surcharge au chargement initial de la page)
  • jspdf-autotable : plugin jsPDF pour les tables formatees (colonnes, couleurs, pagination automatique)

Comparaison de rapports

Corriger une faille, c'est bien. Pouvoir prouver qu'elle a ete corrigee, c'est mieux. La fonctionnalite de comparaison permet d'afficher cote a cote deux rapports d'audit de dates differentes :

Element compareDescription
Score / NoteEvolution de la note globale entre les deux dates
Findings ajoutesFindings presents dans le rapport recent mais absents de l'ancien (problemes apparus depuis)
Findings resolusFindings presents dans l'ancien rapport mais absents du recent (problemes corriges)
Findings communsFindings presents dans les deux rapports (avec evolution du statut)

Cette vue est particulierement utile pour :

  • Mesurer l'impact d'une campagne de remediation ("on a corrige 5 findings critical en une semaine")
  • Identifier les regressions introduites par une mise a jour
  • Preparer un rapport de conformite montrant la progression sur une periode donnee

Export et conformite

Les rapports de securite sont des documents precieux pour la conformite reglementaire (RGPD, audits clients, certifications). Ils demontrent une demarche proactive de surveillance continue :

DonneeUsage conformite
Historique des notesDemontrer l'amelioration continue de la posture de securite
Findings resolusProuver la reactivite face aux vulnerabilites detectees (delai de correction)
Faux positifs documentesJustifier les exclusions avec des explications tracees (transparence)
Frequence des scansAttester de la surveillance quotidienne automatisee (03:30 UTC)
Conformite OWASPGrille A01-A10 avec statut par categorie (referentiel reconnu internationalement)
Exposition RGPDAnalyse des risques lies aux donnees personnelles
Bonnes pratiques

Conservez un historique des rapports sur au moins 12 mois pour demontrer une trajectoire d'amelioration lors des audits de conformite. Les rapports sont generes quotidiennement a 03:30 UTC, fournissant une granularite suffisante pour la plupart des cadres reglementaires. L'export PDF permet de constituer un dossier autonome transmissible a un auditeur externe.


Routes API

RouteMethodeDescription
/api/admin/security/auditPOSTLancer un audit complet (19 outils en parallele)
/api/admin/security/auditGETListe des rapports (date, mode, grade, score, outils)
/api/admin/security/audit/[id]GETDetail complet d'un rapport (analyse Claude incluse)
/api/cron/security-auditGETDeclenchement cron (Bearer CRON_SECRET, timingSafeEqual)

La sidebar admin a une section SECURITE dediee (texte rouge) regroupant les trois pages liees a la securite :

EntreeIconePage
Security CenterShield keyhole/backoffice/security --- dashboard + 19 outils de scan
Rapports securiteDocument medicine/backoffice/security-reports --- rapports d'audit enrichis
VPN WireGuardLock keyhole/backoffice/wireguard --- gestion VPN admin

Voir aussi : Centre de securite | VPN WireGuard | Monitoring operations