AWS Lambda commandes - AWS Security Hub

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.

AWS Lambda commandes

Ces contrôles sont liés aux ressources Lambda.

Il est possible que ces commandes ne soient pas toutes disponibles Régions AWS. Pour plus d’informations, consultez Disponibilité des contrôles par région.

[Lambda.1] Les politiques relatives à la fonction Lambda devraient interdire l'accès public

Exigences connexes : PCI DSS v3.2.1/1.2.1, PCI DSS v3.2.1/1.3.1, PCI DSS v3.2.1/1.3.2, PCI DSS v3.2.1/1.3.4, PCI DSS v3.2.1/7.2.1, NIST.800-53.R5 AC-21, NIST.800-53.R5 AC-3, NIST.800-53.R5 AC-3 (7), NIST.800-53.R5 AC-4, NIST.800-53.R5 AC-4 (21), NIST.800-53.R5 AC-6, NIST.800-53.R5 SC-7, NIST.800-53.R5 SC-7 (11), NIST.800-53.R5 SC-7 (21), NIST.800-53.R5 SC-7 (21), NIST.800-53.R5 SC-7 (21) 53.R5 SC-7 (3), NIST.800-53.R5 SC-7 (4), NIST.800-53.R5 SC-7 (9)

Catégorie : Protéger - Configuration réseau sécurisée

Gravité : Critique

Type de ressource : AWS::Lambda::Function

Règle AWS Config  : lambda-function-public-access-prohibited

Type de calendrier : changement déclenché

Paramètres : Aucun

Ce contrôle vérifie si la politique basée sur les ressources de la fonction Lambda interdit l'accès public en dehors de votre compte. Le contrôle échoue si l'accès public est autorisé. Le contrôle échoue également si une fonction Lambda est invoquée depuis Amazon S3 et que la politique n'inclut aucune condition limitant l'accès public, telle que. AWS:SourceAccount Nous vous recommandons d'utiliser d'autres conditions S3 AWS:SourceAccount en plus de votre politique de compartiment pour un accès plus précis.

La fonction Lambda ne doit pas être accessible au public, car cela peut permettre un accès involontaire à votre code de fonction.

Correction

Pour résoudre ce problème, vous devez mettre à jour la politique basée sur les ressources de votre fonction afin de supprimer les autorisations ou d'ajouter la condition. AWS:SourceAccount Vous ne pouvez mettre à jour la politique basée sur les ressources qu'à partir de l'API Lambda ou. AWS CLI

Pour commencer, consultez la politique basée sur les ressources sur la console Lambda. Identifiez l'énoncé de politique dont les valeurs de Principal champ rendent la politique publique, telles que "*" ou{ "AWS": "*" }.

Vous ne pouvez pas modifier la politique depuis la console. Pour supprimer les autorisations associées à la fonction, exécutez la remove-permissioncommande depuis le AWS CLI.

$ aws lambda remove-permission --function-name <function-name> --statement-id <statement-id>

Remplacez-le <function-name> par le nom de la fonction Lambda et <statement-id> par l'ID d'instruction (Sid) de l'instruction que vous souhaitez supprimer.

[Lambda.2] Les fonctions Lambda doivent utiliser les environnements d'exécution pris en charge

Exigences connexes : NIST.800-53.R5 CA-9 (1), NIST.800-53.R5 CM-2, NIST.800-53.R5 SI-2, NIST.800-53.R5 SI-2 (2), NIST.800-53.R5 SI-2 (4), NIST.800-53.R5 SI-2 (5)

Catégorie : Protéger - Développement sécurisé

Gravité : Moyenne

Type de ressource : AWS::Lambda::Function

Règle AWS Config  : lambda-function-settings-check

Type de calendrier : changement déclenché

Paramètres :

  • runtime: dotnet8, dotnet6, java21, java17, java11, java8.al2, nodejs20.x, nodejs18.x, nodejs16.x, python3.12, python3.11, python3.10, python3.9, python3.8, ruby3.3, ruby3.2 (non personnalisable)

Ce contrôle vérifie si les paramètres de la fonction Lambda pour les environnements d'exécution correspondent aux valeurs attendues définies pour les environnements d'exécution pris en charge pour chaque langage. Le contrôle échoue si une fonction Lambda n'utilise pas un environnement d'exécution compatible.

Le contrôle vérifie les paramètres des fonctions pour les durées d'exécution indiquées précédemment sous paramètres. Security Hub ignore les fonctions dont le type de Image package est.

Les environnements d'exécution Lambda sont conçus autour d'une combinaison de systèmes d'exploitation, de langages de programmation et de bibliothèques de logiciels soumis à des mises à jour de maintenance et de sécurité. Lorsqu'un composant d'exécution n'est plus pris en charge pour les mises à jour de sécurité, Lambda le déconseille. Même si vous ne pouvez pas créer de fonctions utilisant l'environnement d'exécution obsolète, la fonction est toujours disponible pour traiter les événements d'invocation. Nous vous recommandons de vérifier que vos fonctions Lambda sont à jour et de ne pas utiliser d'environnements d'exécution obsolètes. Pour obtenir la liste des environnements d'exécution pris en charge, consultez la section relative aux environnements d'exécution Lambda dans AWS Lambda le Guide du développeur.

Correction

Pour plus d'informations sur les environnements d'exécution et les programmes de dépréciation pris en charge, consultez la section Politique de dépréciation des environnements d'exécution dans le Guide du développeur.AWS Lambda Lorsque vous migrez vos environnements d'exécution vers la dernière version, suivez la syntaxe et les conseils des éditeurs de la langue. Nous vous recommandons également d'appliquer des mises à jour d'exécution afin de réduire le risque d'impact sur vos charges de travail dans les rares cas d'incompatibilité entre les versions d'exécution.

[Lambda.3] Les fonctions Lambda doivent se trouver dans un VPC

Exigences connexes : PCI DSS v3.2.1/1.2.1, PCI DSS v3.2.1/1.3.1, PCI DSS v3.2.1/1.3.2, PCI DSS v3.2.1/1.3.4, NIST.800-53.R5 AC-4, NIST.800-53.R5 AC-3, NIST.800-53.R5 AC-3 (7), NIST.800-53.R5 AC-4, NIST.800-53.R5 NIST.800-53.R5 AC-4 (21), NIST.800-53.R5 SC-7, NIST.800-53.R5 SC-7 (11), NIST.800-53.R5 SC-7 (16), NIST.800-53.R5 SC-7 (20), NIST.800-53.R5 SC-7 (21), NIST.800-53.R5 SC-7 (3), NIST.800-53.R5 SC-7 (3), NIST.800-53.R5 SC-7 (3), NIST.800-53.R5 SC-7 (3), NiST.800-53.R5 SC-7 (3), NiST.800-53.R5 SC-7 (3), NiST.800-53.R5 SC-7 (3), NiST.800-53.R5 SC-7 (3) .800-53.R5 SC-7 (4), NIST.800-53.R5 SC-7 (9)

Gravité : Faible

Type de ressource : AWS::Lambda::Function

AWS Config règle : lambda-inside-vpc

Type de calendrier : changement déclenché

Paramètres : Aucun

Ce contrôle vérifie si une fonction Lambda est déployée dans un cloud privé virtuel (VPC). Le contrôle échoue si la fonction Lambda n'est pas déployée dans un VPC. Security Hub n'évalue pas la configuration de routage du sous-réseau VPC pour déterminer l'accessibilité publique. Il se peut que vous constatiez des résultats erronés pour les ressources Lambda @Edge.

Le déploiement de ressources dans un VPC renforce la sécurité et le contrôle des configurations réseau. Ces déploiements offrent également une évolutivité et une tolérance élevée aux pannes dans plusieurs zones de disponibilité. Vous pouvez personnaliser les déploiements de VPC pour répondre aux diverses exigences des applications.

Correction

Pour configurer une fonction existante afin de se connecter aux sous-réseaux privés de votre VPC, consultez la section Configuration de l'accès au VPC dans le guide du développeur.AWS Lambda Nous vous recommandons de choisir au moins deux sous-réseaux privés pour une haute disponibilité et au moins un groupe de sécurité répondant aux exigences de connectivité de la fonction.

[Lambda.5] Les fonctions Lambda VPC doivent fonctionner dans plusieurs zones de disponibilité

Exigences connexes : NIST.800-53.R5 CP-10, NIST.800-53.R5 CP-6 (2), NIST.800-53.R5 SC-36, NIST.800-53.R5 SC-5 (2), NIST.800-53.R5 SI-13 (5)

Catégorie : Restauration > Résilience > Haute disponibilité

Gravité : Moyenne

Type de ressource : AWS::Lambda::Function

Règle AWS Config  : lambda-vpc-multi-az-check

Type de calendrier : changement déclenché

Paramètres :

Paramètre Description Type Valeurs personnalisées autorisées Valeur par défaut de Security Hub

availabilityZones

Nombre minimum de zones de disponibilité

Enum

2, 3, 4, 5, 6

2

Ce contrôle vérifie si une AWS Lambda fonction qui se connecte à un cloud privé virtuel (VPC) fonctionne dans au moins le nombre spécifié de zones de disponibilité (AZ). Le contrôle échoue si la fonction ne fonctionne pas dans au moins le nombre de AZ spécifié. À moins que vous ne fournissiez une valeur de paramètre personnalisée pour le nombre minimum de zones de disponibilité, Security Hub utilise une valeur par défaut de deux zones de disponibilité.

Le déploiement de ressources sur plusieurs zones de disponibilité est une AWS bonne pratique pour garantir une haute disponibilité au sein de votre architecture. La disponibilité est un pilier essentiel du modèle de sécurité tridimensionnel de confidentialité, d'intégrité et de disponibilité. Toutes les fonctions Lambda connectées à un VPC doivent être déployées dans le cadre d'un déploiement multi-AZ afin de garantir qu'une seule zone de défaillance ne perturbe pas totalement les opérations.

Correction

Si vous configurez votre fonction pour qu'elle se connecte à un VPC dans votre compte, spécifiez des sous-réseaux dans plusieurs zones de disponibilité pour garantir une haute disponibilité. Pour obtenir des instructions, consultez la section Configuration de l'accès au VPC dans le guide du AWS Lambda développeur.

Lambda exécute automatiquement d'autres fonctions dans plusieurs zones de disponibilité afin de garantir sa disponibilité pour traiter les événements en cas d'interruption de service dans une seule zone.