AWS - EFS Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Amazon Elastic File System (EFS) est présenté comme un système de fichiers réseau entièrement géré, évolutif et élastique par AWS. Le service facilite la création et la configuration de systèmes de fichiers qui peuvent être accessibles simultanément par plusieurs instances EC2 et d'autres services AWS. Les principales caractéristiques d'EFS incluent sa capacité à évoluer automatiquement sans intervention manuelle, à fournir un accès à faible latence, à prendre en charge des charges de travail à haut débit, à garantir la durabilité des données et à s'intégrer parfaitement à divers mécanismes de sécurité AWS.
Par défaut, le dossier EFS à monter sera /
mais il pourrait avoir un nom différent.
Un EFS est créé dans un VPC et serait par défaut accessible dans tous les sous-réseaux VPC. Cependant, l'EFS aura un groupe de sécurité. Afin de donner accès à un EC2 (ou tout autre service AWS) pour monter l'EFS, il est nécessaire de permettre dans le groupe de sécurité EFS une règle NFS entrante (port 2049) en provenance du groupe de sécurité EC2.
Sans cela, vous ne pourrez pas contacter le service NFS.
Pour plus d'informations sur la façon de procéder, consultez : https://stackoverflow.com/questions/38632222/aws-efs-connection-timeout-at-mount
Il se peut que le point de montage EFS soit dans le même VPC mais dans un sous-réseau différent. Si vous voulez être sûr de trouver tous les points EFS, il serait préférable de scanner le masque de réseau /16
.
Par défaut, toute personne ayant un accès réseau à l'EFS pourra le monter, le lire et y écrire même en tant qu'utilisateur root. Cependant, des politiques de système de fichiers pourraient être en place n'autorisant que les principaux avec des autorisations spécifiques à y accéder. Par exemple, cette politique de système de fichiers ne permettra même pas de monter le système de fichiers si vous n'avez pas la permission IAM :
Ou cela préventera l'accès anonyme :
Notez que pour monter des systèmes de fichiers protégés par IAM, vous DEVEZ utiliser le type "efs" dans la commande de montage :
Les points d'accès sont des points d'entrée spécifiques à l'application dans un système de fichiers EFS qui facilitent la gestion de l'accès des applications aux ensembles de données partagés.
Lorsque vous créez un point d'accès, vous pouvez spécifier le propriétaire et les permissions POSIX pour les fichiers et répertoires créés via le point d'accès. Vous pouvez également définir un répertoire racine personnalisé pour le point d'accès, soit en spécifiant un répertoire existant, soit en en créant un nouveau avec les permissions souhaitées. Cela vous permet de contrôler l'accès à votre système de fichiers EFS sur une base par application ou par utilisateur, facilitant ainsi la gestion et la sécurisation de vos données de fichiers partagées.
Vous pouvez monter le système de fichiers à partir d'un point d'accès avec quelque chose comme :
Notez que même en essayant de monter un point d'accès, vous devez toujours être en mesure de contacter le service NFS via le réseau, et si l'EFS a une politique de système de fichiers, vous avez besoin de suffisantes autorisations IAM pour le monter.
Les points d'accès peuvent être utilisés pour les objectifs suivants :
Simplifier la gestion des autorisations : En définissant un utilisateur et un groupe POSIX pour chaque point d'accès, vous pouvez facilement gérer les autorisations d'accès pour différentes applications ou utilisateurs sans modifier les autorisations du système de fichiers sous-jacent.
Imposer un répertoire racine : Les points d'accès peuvent restreindre l'accès à un répertoire spécifique au sein du système de fichiers EFS, garantissant que chaque application ou utilisateur opère dans son dossier désigné. Cela aide à prévenir l'exposition ou la modification accidentelle des données.
Accès au système de fichiers plus facile : Les points d'accès peuvent être associés à une fonction AWS Lambda ou à une tâche AWS Fargate, simplifiant l'accès au système de fichiers pour les applications sans serveur et conteneurisées.
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE) Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)