Skip to main content

Risques et atténuations pour GitHub Copilot agent cloud

Comment les Agent cloud Copilotprotections de sécurité intégrées atténuent-ils les risques connus ?

          Agent cloud Copilot est un agent autonome qui a accès à votre code et peut envoyer des modifications à votre référentiel. Cela implique certains risques.

Dans la mesure du possible, GitHub a appliqué les atténuations appropriées. Cela donne Agent cloud Copilot une base forte de protections de sécurité intégrées que vous pouvez compléter en suivant les conseils de bonnes pratiques.

Le code non validé peut introduire des vulnérabilités

          Par défaut, Agent cloud Copilot vérifie le code qu’il génère pour les problèmes de sécurité et obtient un deuxième avis sur son code avec révision du code Copilot. Il cherche à résoudre les problèmes identifiés avant de finaliser la pull request. Cela améliore la qualité du code et réduit la probabilité du code généré en Agent cloud Copilot introduisant des problèmes tels que des secrets codés en dur, des dépendances non sécurisées et d’autres vulnérabilités.
          Agent cloud Copilotla validation de sécurité **ne nécessite pas** de GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security licence.

          CodeQL
          ** est utilisé pour identifier les problèmes de sécurité du code.
  • Les dépendances nouvellement introduites sont vérifiées par rapport aux GitHub Advisory Database avis de programmes malveillants et pour toutes les vulnérabilités élevées ou critiques de CVSS.

          Secret scanning
          ** permet de détecter des informations sensibles telles que des clés API, des jetons et d’autres secrets.
  • Des détails sur l’analyse effectuée et les actions effectuées Agent cloud Copilot par peuvent être examinés dans le journal de session. Consultez « Suivi des sessions de GitHub Copilot ».

Si vous le souhaitez, vous pouvez désactiver un ou plusieurs outils de validation de la qualité du code et de la sécurité utilisés par Agent cloud Copilot. Consultez « Configuration des paramètres pour GitHub Copilot agent cloud ».

Agent cloud Copilot peut envoyer (push) des modifications de code à votre référentiel

Pour atténuer ce risque, GitHubprocédez comme suit :

  • Limite qui peut déclencher l’agent. Seuls les utilisateurs disposant d’un accès en écriture au référentiel peuvent déclencher Agent cloud Copilot pour fonctionner. Les commentaires des utilisateurs sans accès en écriture ne sont jamais transmis à l'agent.
  • Limite la branche vers laquelle l'agent peut pousser. Agent cloud Copilot a uniquement la possibilité d’envoyer (push) vers une seule branche. Lorsque l’agent est déclenché en mentionnant @copilot sur une demande de tirage existante, Copilot dispose d’un accès en écriture à la branche de la demande de tirage. Dans d’autres cas, une nouvelle copilot/ branche est créée pour Copilot, et l’agent ne peut envoyer (push) qu’à cette branche. L'agent est également soumis à toutes les protections de branche et aux vérifications requises pour le référentiel de travail.
  • Limite les informations d’identification de l’agent. Agent cloud Copilot peut uniquement effectuer des opérations push simples. Il n’est pas en mesure d’exécuter directement git push ou d’autres commandes Git.
  • Nécessite une révision humaine avant de fusionner. Les pull requests en brouillon créées par Agent cloud Copilot doivent être examinées et fusionnées par un humain. Agent cloud Copilot ne peut pas marquer ses demandes de tirage comme « Prêt pour révision » et ne peut pas approuver ou fusionner une demande de tirage.
  •           **Limite les exécutions GitHub Actions de flux de travail.** Par défaut, les flux de travail ne sont pas déclenchés tant Agent cloud Copilotque le code n’est pas examiné et qu’un utilisateur disposant d’un accès en écriture au référentiel clique sur le bouton **Approuver et exécuter les flux de travail** . Si vous le souhaitez, vous pouvez configurer Copilot pour autoriser l’exécution automatique des flux de travail. Consultez « [AUTOTITLE](/copilot/how-tos/use-copilot-agents/cloud-agent/review-copilot-prs#managing-github-actions-workflow-runs) ».
    
  •           **Empêche l’utilisateur qui a créé Agent cloud Copilot une demande de tirage de l’approuver.** Cela permet de conserver les contrôles attendus dans la règle « Approbations requises » et la protection des branches. Consultez « [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets) ».
    

          Agent cloud Copilot a accès aux informations sensibles

          Agent cloud Copilot a accès au code et à d’autres informations sensibles, et peut le fuiter, accidentellement ou en raison d’une entrée utilisateur malveillante.

Pour atténuer ce risque, GitHublimite Agent cloud Copilotl’accès à Internet. Consultez « Personnalisation ou désactivation du pare-feu pour l’agent cloud GitHub Copilot ».

Les commandes d’IA peuvent être vulnérables aux attaques par injection

Les utilisateurs peuvent inclure des messages cachés dans les issues assignées à Agent cloud Copilot ou dans les commentaires laissés pour Agent cloud Copilot comme une forme de injection de prompt.

Pour atténuer ce risque, GitHubfiltre les caractères masqués avant de passer l’entrée utilisateur à Agent cloud Copilot: par exemple, le texte entré en tant que commentaire HTML dans un problème ou un commentaire de demande de tirage n’est pas passé à Agent cloud Copilot.

Les administrateurs peuvent perdre de vue le travail des agents

Pour atténuer ce risque, Agent cloud Copilot il est conçu pour être auditable et traçable.

  • Agent cloud CopilotLes commits sont rédigés par Copilot, le développeur qui a attribué le problème ou demandé le changement du pull request étant identifié comme co-auteur. Cela facilite l’identification du code généré par Agent cloud Copilot et par qui a démarré la tâche.
  •           Agent cloud CopilotLes commits de, sont signés, ils apparaissent donc comme « Verified » sur GitHub. Cela garantit que les validations ont été effectuées par Agent cloud Copilot et n’ont pas été modifiées.
    
  • Les journaux de session et les événements du journal d’audit sont disponibles pour les administrateurs.
  • Le message de validation de chaque validation créée par l’agent inclut un lien vers les journaux de session de l’agent, pour la révision et l’audit du code. Consultez « Suivi des sessions de GitHub Copilot ».