Le score de sécurité et les verdicts
2 min de lecture
Un plafond, pas une somme
Le score n'additionne pas des points de pénalité par finding : il part du plafond fixé par la sévérité la plus grave trouvée. La logique : une app avec un seul trou critique et rien d'autre n'est pas "une app saine avec un problème", elle est une app dangereuse. Aucun nombre de petits findings ne peut compenser une critique.
- Pire finding = critique → plafond 20.
- Pire finding = élevée → plafond 55.
- Pire finding = moyenne → plafond 75.
- Pire finding = faible → plafond 90.
- Pire finding = info, ou aucun finding → 100.
La pénalité de volume
Au-delà du plafond, chaque finding significatif supplémentaire (sévérité critique, élevée, moyenne ou faible, pas info) retire 4 points, au-delà du premier. Trois findings élevés ne plafonnent pas plus bas qu'un seul (le plafond reste 55), mais ils coûtent 2 × 4 = 8 points de plus qu'un seul finding élevé isolé.
Une exception : si la clé service_role de Supabase est exposée, le score est plafonné à 5 quel que soit tout le reste : cette clé contourne RLS entièrement, donc rien d'autre ne compte tant qu'elle est exposée.
Un seul score, toujours le plus complet disponible
Le score affiché est celui du mode actif quand il a tourné, sinon celui du scan passif. Il n'y a jamais deux scores séparés à réconcilier, et il ne peut qu'empirer en passant à l'actif : certaines failles ne se révèlent qu'en mode actif, donc un site scanné uniquement en passif peut sembler mieux noté qu'il ne l'est vraiment. Le score ne remonte jamais en activant le mode actif, il ne fait que refléter ce qui a réellement été testé.
Les verdicts
"Sain" (score élevé), "À surveiller" (score moyen), "Critique" (score bas) reflètent directement le score. "Scan en cours", "Échec du scan" et "Scan bloqué" sont des états distincts, sans rapport avec un score (voir l'article sur les scans bloqués ou en échec).