S'accorder l'accès aux données Lake Formation
Peut s'auto-accorder des permissions Lake Formation sur une table gouvernée, puis la lire.
Accorde l'escalade à lui seul.
lakeformation:GrantPermissionsÀ lui seul, lakeformation:GrantPermissions peut s'auto-accorder des permissions Lake Formation sur une table gouvernée, puis la lire. Sur un périmètre de ressources large, cela atteint à lui seul l'accès pour un principal externe ou public.
Pourquoi c'est dangereux
Un principal peut appeler lakeformation:GrantPermissions pour s'octroyer SELECT (ou ALL) sur la table gouvernée, puis interroger la table et les données S3 qu'elle catalogue. Lake Formation est la couche d'autorisation au-dessus du lac de données, l'auto-octroi en son sein contourne donc l'absence d'un octroi au niveau de la table : l'attaquant réécrit le verrou au lieu de détenir une clé, transformant le contrôle de l'API d'octroi en accès en lecture aux données gouvernées.
En termes MITRE ATT&CK, cela correspond à T1098, Manipulation de compte, dans la tactique escalade de privilèges. AWS l'enregistre dans CloudTrail sous GrantPermissions, PutDataLakeSettings. L'appel apparaît dans CloudTrail mais se fond dans l'administration normale, il lui faut donc une règle pour ressortir.
Détection
GrantPermissionsPutDataLakeSettingsPrérequis
lakeformation:GrantPermissions (ou PutDataLakeSettings pour s'auto-promouvoir administrateur LF). L'abus suppose en outre l'absence de garde-fou SCP/limite/PrincipalOrgID et que les propres règles d'octroi de Lake Formation autorisent l'octroi ; lire la table nécessite glue:GetTable ainsi que le chemin de données Athena/Glue.
MITRE ATT&CK
T1098 · Manipulation de compteTactique
Escalade de privilèges
Un contrôle qui le supprimerait : Restreindre lakeformation:GrantPermissions et lakeformation:PutDataLakeSettings aux administrateurs du data lake ; refuser les écritures de grant/admin LF via une SCP ; examiner les paramètres du Data Lake et l'ensemble des administrateurs LF.
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 lakeformation:GrantPermissions ?
Peut s'auto-accorder des permissions Lake Formation sur une table gouvernée, puis la lire.
lakeformation:GrantPermissions permet-il à lui seul une escalade de privilèges ?
Oui. Détenue sur une ressource suffisamment large, elle atteint un accès pour un principal externe ou public sans aucune autre permission.
Comment détecter l'auto-octroi de l'accès aux données Lake Formation ?
Surveillez GrantPermissions, PutDataLakeSettings 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 : Limitez lakeformation:GrantPermissions et lakeformation:PutDataLakeSettings aux administrateurs du data lake ; refusez les écritures de grant/admin LF via SCP ; examinez les paramètres Data Lake et l'ensemble des administrateurs LF. 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 ?
T1098, Manipulation de compte, dans la tactique escalade de privilèges.
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.