La fonctionnalité Sécurité surveille vos dépôts à la recherche de dépendances vulnérables connues, de secrets divulgués et de code vulnérable, regroupe toutes les constatations dans une même liste, et transforme celles qui sont confirmées en demandes d'intégration que votre équipe peut réviser et fusionner.
Cette section décrit la fonctionnalité du produit : la sécurité de votre code. Pour savoir comment Coroid protège lui-même votre code et vos données, consultez Sécurité et déploiement.
Ce qu'elle fait
| Protection | Ce qu'elle fait | Peut faire échouer une vérification |
|---|---|---|
| Dépendances vulnérables | Elle lit les fichiers de verrouillage de chaque projet au niveau de la branche par défaut et compare chaque paquet aux alertes publiées. Elle analyse également les modifications des fichiers de verrouillage de pull request de la même manière. | Oui |
| Corriger les dépendances vulnérables | Elle ouvre une tâche pull request pour mettre à jour un paquet vulnérable, en priorisant les constatations critiques. | Non |
| Secrets divulgués | Elle recherche des identifiants dans chaque modification apportée, ainsi que dans l'ensemble de l'historique de la branche par défaut. | Oui |
| Analyse de code | Les règles de sécurité de Coroid appliquées au code, ainsi que votre propre commande d'analyse si vous en avez une. | Oui |
| Révision de sécurité sur les demandes d'intégration | Elle vérifie les problèmes de sécurité signalés par la fonctionnalité Révision de Coroid, via une vérification indépendante, avant que l'une de ces constatations ne puisse faire échouer un pull request. | Oui |
| Alertes de sécurité de GitHub | Elle importe les alertes de Dependabot, d'analyse de code et de scan de secrets afin de les afficher aux côtés des constatations propres à Coroid. | Non |
| Audit de sécurité | Elle analyse votre code le plus critique ainsi que le code modifié depuis le dernier audit afin de détecter d'éventuelles vulnérabilités. Seules les constatations confirmées par une vérification indépendante sont conservées. | Non |
Chaque mécanisme de protection est expliqué sur sa propre page dans cette section. Consultez Protections et application des règles pour savoir comment ils sont activés, observés et appliqués.
Où il se trouve
La fonctionnalité Sécurité dispose de son propre emplacement dans le menu principal, après le Contrôle qualité :
- Aperçu: affiche les constatations classées par gravité et leur nombre ayant dépassé la date limite, la couverture de chaque projet et la dernière analyse effectuée, l'avancement des corrections, l'état des données d'alerte et des alertes de GitHub.
- Constatations: la liste unique de toutes les constatations relevées par la fonctionnalité Sécurité, regroupées par projet. Consultez Constatations et leur cycle de vie.
- Dépendances: l'inventaire des paquets de chaque projet, avec une exportation au format CycloneDX. Consultez Dépendances vulnérables.
- Modèles de menaces: un par projet. Consultez Modèles de menaces.
- Paramètres: la configuration par défaut de l'organisation et celle de chaque projet, avec un commutateur pour chaque mécanisme de protection.
Chaque membre accède à l'Aperçu, aux Constatations, aux Dépendances et aux Modèles de menaces pour les projets auxquels il a accès. Les propriétaires et administrateurs d'organisation modifient les paramètres, les modèles de menaces et les exceptions, et prennent des mesures concernant les constatations. Les tâches de correction constituent des activités ordinaires : elles apparaissent dans l'Usine, et une constatation renvoie à sa tâche ainsi qu'à pull request.
Comment elle prend ses décisions
Les preuves priment. Une constatation bloque un pull request ou envoie une notification uniquement si elle est accompagnée de preuves d'un type spécifique, vérifiées sur un commit donné. Tout le reste est classé comme « Pas encore confirmé » et n'entraîne aucune action. Consultez Preuves.
Pas de résultat vert silencieux. Un résultat positif n'est pris en compte qu'après une analyse complète. Une analyse partielle, un manque de permissions, un inventaire obsolète ou des données d'alerte retardées sont affichés comme couverture inconnue ou partielle, jamais comme résolu.
Les utilisateurs restent maîtres du processus. Coroid ouvre des demandes d'intégration ; ce sont les utilisateurs qui les fusionnent. Les exceptions, la configuration du scan et la divulgation des informations sont décidées dans la section Sécurité par les propriétaires et administrateurs, jamais par une modification en cours de test.
Privé par défaut. Les détails d'une vulnérabilité non encore rendue publique restent au sein de Coroid jusqu'à ce qu'une personne autorisée les divulgue. Consultez Divulgation.
Coroid n'utilise jamais un identifiant qu'il aurait découvert. Il n'essaie pas d'utiliser un secret divulgué pour vérifier s'il fonctionne.
Son coût
La fonctionnalité Sécurité est incluse dans tous les abonnements, y compris l'offre Gratuite.
- La détection ne coûte rien. Les inventaires, le rapprochement des conseils, les analyses de secrets et de code ainsi que l'importation d'alertes n'utilisent aucun modèle AI, ce qui permet d'économiser à la fois des crédits et des heures d'agent. Les analyses propres à chaque organisation occupent une des emplacements d'agent lors de leur exécution. Si aucune emplacement n'est disponible, elles attendent, ce qui est indiqué comme « en attente » dans Mission Control ; la couverture est alors affichée comme « inconnue » jusqu'à leur exécution. Mettre en pause le travail des agents dans Mission Control ne suspend pas les analyses de sécurité.
- Le travail utilisant un modèle est facturé comme tout autre travail.: les tâches de correction, l'audit de sécurité et la vérification indépendante des affirmations de sécurité de la fonctionnalité Révision Coroid. Cela consomme vos crédits et vos heures d'agent, apparaît dans Paramètres → Activité, et entre en attente lorsque les crédits ou les heures sont épuisés. La détection continue néanmoins de fonctionner.
Ce qu'il ne couvre pas encore.
Les images conteneurs, l'infrastructure en tant que code, les analyses en temps d'exécution et les licences ne sont pas couverts. La configuration du workflow CI n'est couverte que par les règles de code existantes de Coroid. L'Aperçu l'indique clairement : rien n'est considéré comme couvert s'il ne l'est pas.