Serverless

Attaquer le serverless AWS : rôles d'exécution Lambda, code et couches, politiques de ressource et contournement d'autorisation API Gateway, URL de fonction, Step Functions et EventBridge.

1 min de lecturemis à jour le 12 oct. 2026florianamette1 contributeur
Demander à votre assistant (MCP)Modifier sur GitHub

Un composant serverless s'exécute avec un rôle et détient une configuration qui porte fréquemment des secrets, de sorte qu'atteindre l'un revient à atteindre son rôle et sa configuration. Lambda en est le centre de gravité : une fonction s'exécute sous un rôle d'exécution, ses variables d'environnement contiennent souvent des identifiants, et son code est remplaçable par un attaquant. Autour d'elle, API Gateway expose les fonctions et d'autres services AWS, les URL de fonction les exposent directement, et Step Functions ainsi qu'EventBridge orchestrent des actions privilégiées sous leurs propres rôles.

Ce qui s'intègre ici#

  • Rôle d'exécution : voler les identifiants du rôle d'une fonction Lambda depuis le runtime.
  • Code et couches : lire le code source et les couches à la recherche de secrets, et les écraser pour exécuter du code sous le rôle.
  • API Gateway : exposition par politique de ressource, contournement d'autorisation et rôle d'intégration.
  • URL de fonction : une URL de fonction Lambda à l'authentification laxiste, invoquée directement via HTTPS.
  • Step Functions : machines à états et leur rôle d'exécution.
  • EventBridge : règles, bus et cibles déclenchées sous un rôle privilégié.

Créer ou mettre à jour une fonction pour lui faire assumer un rôle plus puissant relève du chemin iam:PassRole et se trouve dans la section identité ; les pages présentes ici couvrent le détournement des services eux-mêmes.

Références#