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.