Aller au contenu
CodeAuditAgent
Toute la documentation

Lire un rapport

Ce que le score de risque signifie, comment les sévérités sont attribuées et à quoi sert chaque partie d'une conclusion.

Un rapport s'ouvre avec un résumé, un score de risque et un décompte, puis énumère les conclusions du plus grave au moins grave. Tout sous le résumé est écrit pour être agi, pas juste pour être lu.

Score de risque

Le score de risque va de 0 à 100 et exprime le degré d'exposition de ce code: il pèse les conclusions les plus graves beaucoup plus lourdement que le nombre de conclusions. Un problème unique et critique, exploitable à distance, marque plus haut qu'une douzaine de conclusions de faible sévérité. Utilisez-le pour comparer un référentiel à lui-même au fil du temps; ce n'est pas un étalon de comparaison avec d'autres bases de code.

Sévérité

  • Critique — exploitable à distance, mène à l'exécution de code à distance, contournement d'authentification, compromis complet des données ou secret de production divulgué.
  • Élevé — une faiblesse grave qui nécessite une condition spécifique, telle qu'une session authentifiée ou un chemin d'entrée particulier.
  • Moyen — réel mais limité: il nécessite une condition préalable improbable, ou les dégâts sont contenus.
  • Bas — hygiène et durcissement: cela vaut la peine de corriger, pas la peine de réveiller quelqu'un la nuit.
  • Info — une observation sans impact direct sur la sécurité.

À l'intérieur d'une conclusion

Chaque conclusion est construite pour que vous puissiez la juger sans lui faire confiance aveuglément:

  • Emplacement — le fichier et la plage de lignes où se trouve le problème.
  • Preuve — le code exact cité de votre référentiel. Si la preuve ne correspond pas au fichier, la conclusion est incorrecte; c'est le but de la citation.
  • Description — ce qui ne va pas, écrit pour un développeur qui n'a pas écrit ce code.
  • Impact — ce qu'un attaquant en tire et ce dont il a besoin d'abord.
  • Comment corriger — les étapes dans l'ordre, pas des conseils généraux.
  • Correctif — le code corrigé écrit contre le code cité, prêt à être adapté.
  • Comment vérifier — le contrôle qui vous dit que la correction a fonctionné, donc vous ne devinez pas.
  • Références — un à trois liens faisant autorité, comme l'entrée CWE ou la documentation propre de la bibliothèque.
  • Confiance — à quel point l'auditeur est sûr. Confiance faible signifie que la conclusion dépend d'un contexte que l'audit ne pouvait pas voir.

Mappage CWE

Les conclusions portent un identifiant CWE le cas échéant. La CWE est ce qui lie vos conclusions au reste du système: elle dirige la ventilation des faiblesses sur le tableau de bord, les filtres de flux CVE et la clé qui garde un rejet attaché au même problème à travers les audits.

Exportation

N'importe quel rapport peut être copié ou téléchargé en Markdown, avec les correctifs dans les blocs de code clôturés, ce qui est pratique pour les coller dans un suivi de problèmes ou une description de pull request. L'explorateur de conclusions exporte également CSV dans les référentiels.

Partage d'un rapport

Un rapport terminé peut être remis à quelqu'un sans compte : le bouton de partage copie un lien en lecture seule qui porte sa propre signature et son expiration. La page qu'il ouvre affiche le rapport et rien d'autre — pas de rejet, pas de données de compte — et le lien cesse de fonctionner après sept jours. Quiconque dispose du lien peut lire le rapport ; traitez-le donc comme le code qu'il décrit.

Langue

Les rapports sont rédigés dans la langue que vous utilisiez quand vous avez commencé l'audit. Le code, les chemins de fichier, les identifiants CWE, les correctifs et les liens de référence restent tels quels — seule la prose est traduite.