View a markdown version of this page

Création d'une révision de code - Agent de sécurité AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'une révision de code

Révisez le code dans l'application Web AWS Security Agent pour analyser vos référentiels de code source et vos sources S3 afin de détecter les failles de sécurité. Les révisions de code permettent d'effectuer une analyse statique complète de l'ensemble de votre base de code, d'identifier les problèmes de sécurité et de fournir des conseils pour y remédier.

Contrairement à la révision de code basée sur les pull requests qui analyse les modifications de code individuelles (voirPassez en revue les résultats de sécurité du code dans les pull requests), les révisions de code à la demande analysent l'intégralité de votre code source pour identifier les failles de sécurité et valider la conformité aux exigences de sécurité de votre entreprise.

Dans cette procédure, vous allez créer une révision de code en sélectionnant les entrées du code source, en configurant les autorisations et en exécutant la révision.

Conditions préalables

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Accès à l'application Web AWS Security Agent

  • Au moins un GitHub référentiel connecté ou un compartiment S3 dans votre espace agent

Astuce

Si des GitHub référentiels sont déjà connectés à votre espace agent, la révision du code est prête à être utilisée ; aucune configuration supplémentaire n'est requise. Choisissez Démarrer dans l'application Web depuis la carte de révision du code sur votre page Agent Space, ou lancez directement l'application Web.

Si vous devez connecter des sources supplémentaires ou configurer des compartiments S3, consultezActiver la révision du code.

Accédez à la page de révision du code

Accédez à la section de révision du code dans l'application Web.

  1. Connectez-vous à l'application Web AWS Security Agent.

  2. Dans la barre latérale gauche, choisissez Code reviews.

  3. Vous pouvez consulter la liste des révisions de code existantes avec leurs informations sources, l'état de la dernière exécution et le résumé des résultats.

Création d'une révision de code

Configurez une nouvelle révision de code en configurant les entrées et les autorisations du code source.

  1. Sur la page de révision du code, choisissez Créer une révision de code.

Configurer les détails de la révision du code

Entrez un titre et sélectionnez le code source à examiner.

  1. Dans le champ Titre, entrez un nom descriptif pour votre révision de code.

    Astuce

    Utilisez un nom qui identifie l'application, le référentiel ou l'étendue de la révision. Par exemple, « billing-service-security-review » ou « infrastructure-code-audit ».

  2. Dans la section Sources, sélectionnez les entrées de code source pour cette révision. Choisissez l'un des deux onglets suivants :

GitHub référentiels

Faites votre choix parmi les référentiels connectés à votre espace agent.

  1. Choisissez l'onglet GitHub Référentiels.

  2. Dans le tableau Référentiels intégrés, cochez la case à côté de chaque référentiel que vous souhaitez inclure dans la révision.

  3. Utilisez le champ de recherche pour trouver des référentiels spécifiques par nom.

Note

Seuls les référentiels connectés à votre espace agent via la configuration de révision du code apparaissent ici. Pour ajouter d'autres référentiels, choisissez Gérer dans votre console d'administration ou demandez à votre administrateur de mettre à jour la configuration de l'espace agent.

Sources S3

Sélectionnez les fichiers ZIP dans les compartiments S3 connectés à votre espace agent. Votre administrateur Agent Space configure les compartiments S3 disponibles. Tout fichier ZIP stocké dans l'un de ces compartiments peut être utilisé comme source pour une révision de code.

  1. Choisissez l'onglet Sources S3.

  2. Entrez l'URI S3 de chaque fichier ZIP que vous souhaitez inclure dans la révision. Vous pouvez ajouter jusqu'à 30 sources S3.

Note

Les sources S3 doivent être des fichiers ZIP stockés dans des compartiments S3 connectés à votre espace agent. Pour mettre des compartiments supplémentaires à disposition, voirActiver la révision du code.

Configurer les autorisations

Sélectionnez le rôle de service IAM et le groupe de CloudWatch journaux facultatif pour cette révision du code.

  1. Dans la section Autorisations, recherchez la liste déroulante des rôles de service.

  2. Sélectionnez le rôle IAM parmi les rôles de service que vous avez configurés.

    Note

    Le rôle de service doit être autorisé à accéder à votre code source dans S3 et à écrire dans CloudWatch les journaux, ainsi que dans toute autre ressource AWS nécessaire à la révision du code. Les rôles de service sont configurés lors de la configuration de la révision du code dans l'AWS Management Console.

  3. (Facultatif) Dans la liste déroulante des groupes de CloudWatch journaux, sélectionnez un groupe de journaux pour stocker les journaux d'exécution des révisions de code.

    Note

    Si vous ne sélectionnez aucun groupe de journaux, AWS Security Agent crée un groupe de journaux par défaut pour stocker les journaux de révision du code.

Configurer la correction automatique du code

Activez la correction automatique pour qu'AWS Security Agent génère des correctifs de code pour tous les résultats dès que l'examen est terminé.

  1. Dans la section Correction automatique du code, cochez la case Activer la correction automatique du code.

La manière dont AWS Security Agent fournit le correctif dépend de la source :

  • GitHub Référentiels privés : AWS Security Agent envoie une pull request contenant le correctif au référentiel.

  • GitHub Référentiels publics : pour éviter de révéler la vulnérabilité avant qu'elle ne soit corrigée, AWS Security Agent n'ouvre pas de pull request. Au lieu de cela, il ajoute une suggestion de différence à la découverte que vous pouvez télécharger depuis l'application Web et postuler en privé.

  • Sources S3 : la correction du code n'est pas disponible. Passez en revue les détails des résultats et appliquez les correctifs manuellement.

Important

Les pull requests de correction soumises à des référentiels privés sont visibles par toutes les personnes disposant d'un accès en lecture. Vérifiez les modifications avant de procéder à la fusion. La correction automatique du code n'est disponible que lorsque GitHub les référentiels sont sélectionnés comme source.

Note

Lorsque cette option est désactivée, vous pouvez toujours déclencher manuellement la correction du code en fonction des GitHub-sourced résultats individuels une fois la révision terminée.

Configuration de la validation simulée

Activez la validation simulée pour confirmer dynamiquement si les vulnérabilités découvertes sont exploitables dans une application en cours d'exécution.

  1. Dans la section Validation simulée, cochez la case Activer la validation simulée.

Lorsqu'il est activé, AWS Security Agent met en service un environnement simulé une fois l'analyse statique terminée. Il intègre votre code source, démarre les services au sein de l'environnement et tente d'exploiter les vulnérabilités détectées lors de l'analyse. Les résultats sont ensuite mis à jour avec un statut de validation indiquant si la vulnérabilité a été exploitée avec succès.

Note

La validation simulée n'est actuellement disponible que pour les applications dockerisables autonomes. Lorsque plusieurs référentiels sont sélectionnés comme sources, la validation simulée n'est pas disponible.

Important

La validation simulée ajoute du temps de traitement à votre exécution de révision du code. L'étape de validation provisionne un environnement et exécute des tentatives d'exploitation. Cela prend généralement 1 à 3 heures en fonction du nombre de résultats et de la complexité de l'application.

Destinations réseau autorisées

L'accès au réseau sortant de l'environnement simulé est limité à une liste d'autorisation prédéfinie. Votre application peut atteindre les domaines suivants lors de la validation :

Le tableau suivant répertorie les domaines autorisés et leurs objectifs.

Domain Objectif

.amazonaws.com, .aws.amazon.com

Services AWS

.public.ecr.aws

Amazon ECR Public

.docker.com, .docker.io

Docker Hub

.github.com, .githubusercontent.com

GitHub

.gitlab.com

GitLab

.npmjs.com, .npmjs.org

registre npm

.pypi.org, .pypi.python.org, .pythonhosted.org

Index des packages Python

.crates.io, .rustup.rs

Paquets Rust

.maven.org, .gradle.org

Java/Gradle colis

.nuget.org

Paquets .NET

.rubygems.org, .ruby-lang.org

Paquets Ruby

.golang.org, .pkg.go.dev, .goproxy.io

Forfaits Go

.nodejs.org, .yarnpkg.com

Node.js

.alpinelinux.org, .debian.org, .ubuntu.com, .centos.org, .fedoraproject.org

Référentiels de distribution Linux

.cloudfront.net

CloudFront distributions

.google.com, .googleapis.com

API Google

.microsoft.com, .visualstudio.com

Services Microsoft

.sourceforge.net, .bitbucket.org

Hébergement source

Note

Si votre application nécessite un accès réseau à des domaines ne figurant pas dans cette liste, la connexion sera bloquée par le pare-feu réseau. Les applications qui dépendent d'API ou de services externes non répertoriés ci-dessus risquent de ne pas démarrer correctement dans l'environnement simulé.

Création de la révision du code

  1. Vérifiez votre configuration pour garantir son exactitude.

  2. Choisissez Créer une révision de code.

Vous êtes redirigé vers la page détaillée de révision du code où vous pouvez démarrer une révision.

Exécuter une révision du code

Après avoir créé une révision de code, lancez une exécution pour commencer l'analyse.

  1. Sur la page détaillée de la révision du code, choisissez Commencer la révision.

  2. AWS Security Agent commence à analyser votre code source.

Vous pouvez également démarrer une révision depuis la page de liste des révisions de code en choisissant Commencer la révision à côté de la révision de code que vous souhaitez exécuter.

Surveiller l'exécution d'une révision de code

Suivez la progression de la révision de votre code au fur et à mesure de son exécution.

Passez en revue les phases d'exécution

Une révision de code passe par les phases suivantes, affichées sous forme d'indicateur de progression :

  1. Preflight — L'agent de sécurité AWS valide l'accès à votre code source et configure l'environnement de test. Les contrôles avant vol incluent :

    • Configuration de l'infrastructure de service

    • Validation de l'accès aux sources S3

    • Configuration de l'environnement de test

  2. Analyse statique : AWS Security Agent analyse votre code source pour détecter les failles de sécurité et les violations des exigences.

  3. Validation simulée (facultatif) : si la validation simulée est activée, AWS Security Agent met en service un environnement simulé et déploie votre application. Il tente ensuite d'exploiter les vulnérabilités découvertes lors de l'analyse statique. Cette étape confirme si les résultats sont exploitables dans l'environnement d'exécution cible. Cette phase apparaît uniquement lorsque vous activez la validation simulée lors de la création de la révision du code.

  4. Finalisation — L'agent de sécurité AWS compile les résultats et génère le résumé des résultats.

Afficher les détails de la course

Sur la page détaillée de l'exécution, naviguez entre les onglets pour suivre la progression :

  • Exécution de la révision du code : affichez le résumé de l'exécution, y compris l'ID d'exécution, l'heure de création, le statut, la durée, les heures de tâche, la répartition des niveaux de gravité et le graphique des types de risques.

  • Prévol — Consultez la progression du contrôle avant vol et le statut de chaque étape de validation.

  • Journaux de révision du code : consultez les tâches identifiées et effectuées par AWS Security Agent au cours de la révision, avec des journaux de tâches détaillés pour chaque étape.

  • Validation simulée : lorsque la validation simulée est activée, consultez l'état du provisionnement, les tâches de validation pour les résultats individuels et leurs résultats.

  • Résultats — Consultez les résultats de sécurité une fois l'examen terminé (voirExaminer les résultats d'une révision de code).

Historique des courses

Chaque révision de code conserve un historique de toutes les exécutions. Sur la page détaillée de la révision du code :

  • La section Dernière exécution indique la dernière exécution avec son heure de début, son statut, sa durée et son ID.

  • Le tableau Toutes les exécutions répertorie toutes les exécutions précédentes avec leur heure de début, leur statut, leur durée, le résumé des résultats et leur identifiant.

  • Choisissez Surveiller l'exécution pour afficher les détails de la dernière exécution active.

  • Choisissez le lien vers l'heure de début de n'importe quelle course pour en afficher tous les détails.

Étapes suivantes

Après avoir effectué une révision du code :

  • Consultez les résultats de sécurité et les conseils de correction correspondants (voirExaminer les résultats d'une révision de code)

  • Corrigez les résultats par le biais de pull requests automatisées ou de corrections manuelles (voirCorriger les résultats de la révision du code)

  • Exécuter des révisions supplémentaires après avoir mis en œuvre les correctifs pour vérifier les mesures correctives

  • Ajustez votre configuration de révision de code ou vos sources à mesure que votre base de code évolue