Invoquer Lambda (exécuté avec son rôle)
Peut invoquer une fonction Lambda et l'exécuter sous son rôle d'exécution.
Accorde l'escalade à lui seul.
lambda:InvokeFunctionÀ lui seul, lambda:InvokeFunction peut invoquer une fonction Lambda et l'exécuter avec son rôle d'exécution. Sur un périmètre de ressources large, cela atteint à lui seul l'accès administrateur.
Pourquoi c'est dangereux
Un principal peut appeler lambda:InvokeFunction sur la fonction, vérifié à la fois contre la politique d'identité du principal et la politique de ressource (d'invocation) de la fonction. La fonction s'exécute en tant que son rôle d'exécution, l'invoquer est donc une exécution de code en tant que ce rôle, la fonction n'est pas le prix mais une charnière : la chaîne continue vers le rôle qu'elle cède (lambda-cred-theft) et tout ce que ce rôle peut atteindre.
En termes MITRE ATT&CK, cela correspond à T1648, Exécution serverless, dans la tactique exécution. AWS l'enregistre dans CloudTrail sous Invoke. L'appel apparaît dans CloudTrail mais se fond dans l'administration normale, il lui faut donc une règle pour ressortir.
Détection
InvokePrérequis
lambda:InvokeFunction sur la fonction (depuis l'identité OU la politique de ressource de la fonction).
MITRE ATT&CK
T1648 · Exécution serverlessTactique
Exécution
Un contrôle qui le supprimerait : Restreindre la portée de lambda:InvokeFunction et de la politique de ressource de la fonction ; appliquer le moindre privilège au rôle d'exécution.
La décision de l'appliquer dépend de la façon dont la permission est utilisée dans votre environnement, il s'agit donc d'une décision métier plutôt que d'un correctif automatique. La même permission peut être porteuse dans un compte et pur risque dans un autre.
Pathbreak confirme si ce chemin se résout dans votre compte, le classe par rapport aux autres selon l'ampleur de ce qu'il ouvre, et utilise votre modèle de menace et votre contexte métier pour montrer quels chemins valent la peine d'être coupés.
Questions
Que permet lambda:InvokeFunction ?
Peut invoquer une fonction Lambda et l'exécuter sous son rôle d'exécution.
lambda:InvokeFunction permet-il à lui seul une escalade de privilèges ?
Oui. Détenue sur une ressource suffisamment large, elle atteint l'accès administrateur sans aucune autre permission.
Comment détecter l'invocation de Lambda (exécuté avec son rôle) ?
Surveillez Invoke dans CloudTrail. Cet appel apparaît dans CloudTrail mais se fond dans l'administration normale, il faut donc une règle pour le faire ressortir.
Comment briser ce chemin ?
Un contrôle qui le supprimerait est : Restreignez lambda:InvokeFunction et la politique de ressource de la fonction ; appliquez le moindre privilège au rôle d'exécution. L'appliquer ou non dépend de la manière dont l'autorisation est utilisée dans votre compte, il s'agit donc d'une décision métier plutôt que d'un correctif automatique.
De quelle technique MITRE ATT&CK s'agit-il ?
T1648, Exécution serverless, dans la tactique exécution.
Chemins associés
Références
Trouvez ceci dans votre propre compte
Nous réalisons un scan en lecture seule d'un compte AWS et vous montrons lesquels de ces chemins existent, classés par rayon d'impact, avec le changement qui brise chacun d'eux. Premiers chemins validés en moins d'une heure.