AWS - EFS Enum

Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

EFS

Taarifa Msingi

Amazon Elastic File System (EFS) inajulikana kama mtandao wa faili uliosimamiwa kabisa, unaoweza kupanuliwa, na wa kielelezo na AWS. Huduma hii inarahisisha uundaji na usanidi wa mfumo wa faili ambao unaweza kufikiwa kwa wakati mmoja na mifano kadhaa ya EC2 na huduma zingine za AWS. Sifa muhimu za EFS ni pamoja na uwezo wake wa kupanuka moja kwa moja bila kuingilia kati kwa mikono, kutoa ufikiaji wa chini wa kuchelewa, kusaidia kazi zenye uwezo mkubwa wa kupitisha data, kuhakikisha uthabiti wa data, na kuingiliana kwa urahisi na mbinu mbalimbali za usalama za AWS.

Kwa chaguo-msingi, folda ya EFS ya kufunga itakuwa / lakini inaweza kuwa na jina tofauti.

Upatikanaji wa Mtandao

EFS inaundwa katika VPC na itakuwa inapatikana kwa chaguo-msingi katika mitandao yote ya VPC. Hata hivyo, EFS itakuwa na Kikundi cha Usalama. Ili kumpa ufikiaji kwa EC2 (au huduma yoyote nyingine ya AWS) ili kufunga EFS, ni lazima kuruhusu katika kikundi cha usalama cha EFS kuingia kwa NFS (kituo cha 2049) kutoka kwa kikundi cha usalama cha EC2.

Bila hii, hutaweza kuwasiliana na huduma ya NFS.

Kwa habari zaidi kuhusu jinsi ya kufanya hivi angalia: https://stackoverflow.com/questions/38632222/aws-efs-connection-timeout-at-mount

Uchambuzi

# Get filesystems and access policies (if any)
aws efs describe-file-systems
aws efs describe-file-system-policy --file-system-id <id>

# Get subnetworks and IP addresses where you can find the file system
aws efs describe-mount-targets --file-system-id <id>
aws efs describe-mount-target-security-groups --mount-target-id <id>
aws ec2 describe-security-groups --group-ids <sg_id>

# Get other access points
aws efs describe-access-points

# Get replication configurations
aws efs describe-replication-configurations

# Search for NFS in EC2 networks
sudo nmap -T4 -Pn -p 2049 --open 10.10.10.0/20 # or /16 to be sure

Inawezekana kwamba sehemu ya kufunga EFS iko ndani ya VPC ile ile lakini kwenye subnet tofauti. Ikiwa unataka kuwa na uhakika unapata vituo vyote vya EFS itakuwa bora kuscan netmask ya /16.

Funga EFS

sudo mkdir /efs

## Mount found
sudo apt install nfs-common
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport <IP>:/ /efs

## Mount with efs type
## You need to have installed the package amazon-efs-utils
sudo yum install amazon-efs-utils # If centos
sudo apt-get install amazon-efs-utils # If ubuntu
sudo mount -t efs <file-system-id/EFS DNS name>:/ /efs/

Upatikanaji wa IAM

Kwa chaguo-msingi yeyote mwenye upatikanaji wa mtandao wa EFS ataweza kufunga, kusoma na kuandika hata kama ni mtumiaji wa mizizi. Walakini, sera za Mfumo wa Faili zinaweza kuwekwa ili kuruhusu tu mabwana wenye idhini maalum kuipata. Kwa mfano, sera hii ya Mfumo wa Faili haitaruhusu hata kufunga mfumo wa faili ikiwa huna idhini ya IAM:

{
"Version": "2012-10-17",
"Id": "efs-policy-wizard-2ca2ba76-5d83-40be-8557-8f6c19eaa797",
"Statement": [
{
"Sid": "efs-statement-e7f4b04c-ad75-4a7f-a316-4e5d12f0dbf5",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "",
"Resource": "arn:aws:elasticfilesystem:us-east-1:318142138553:file-system/fs-0ab66ad201b58a018",
"Condition": {
"Bool": {
"elasticfilesystem:AccessedViaMountTarget": "true"
}
}
}
]
}

Au hii itazuia upatikanaji usiojulikana:

Tafadhali kumbuka kwamba ili kupakia mifumo ya faili iliyolindwa na IAM UNAHITAJI kutumia aina "efs" katika amri ya kupakia:

sudo mkdir /efs
sudo mount -t efs -o tls,iam  <file-system-id/EFS DNS name>:/ /efs/
# To use a different pforile from ~/.aws/credentials
# You can use: -o tls,iam,awsprofile=namedprofile

Vituo vya Kufikia

Vituo vya kufikia ni vielekezi maalum vya programu ndani ya mfumo wa faili wa EFS ambavyo hufanya iwe rahisi kusimamia ufikiaji wa programu kwenye seti za data zilizoshirikiwa.

Unapounda kituo cha kufikia, unaweza kutaja mmiliki na ruhusa za POSIX kwa faili na saraka zilizoundwa kupitia kituo cha kufikia. Unaweza pia kutambua saraka ya mizizi ya desturi kwa kituo cha kufikia, ama kwa kutaja saraka iliyopo au kwa kuunda mpya na ruhusa zinazohitajika. Hii inaruhusu wewe kudhibiti ufikiaji kwenye mfumo wako wa faili wa EFS kulingana na programu au mtumiaji, ikifanya iwe rahisi kusimamia na kusalisha data zako za faili zilizoshirikiwa.

Unaweza kufunga Mfumo wa Faili kutoka kwenye kituo cha kufikia kwa kitu kama:

# Use IAM if you need to use iam permissions
sudo mount -t efs -o tls,[iam],accesspoint=<access-point-id> \
<file-system-id/EFS DNS> /efs/

Tafadhali kumbuka kwamba hata kujaribu kufunga kituo cha kupata bado unahitaji kuweza kuwasiliana na huduma ya NFS kupitia mtandao, na ikiwa EFS ina sera ya mfumo wa faili, unahitaji ruhusa za IAM za kutosha kufunga.

Vipengele vya kupata vinaweza kutumika kwa madhumuni yafuatayo:

  • Usimamizi rahisi wa ruhusa: Kwa kufafanua mtumiaji na kikundi cha POSIX kwa kila kituo cha kupata, unaweza kusimamia kwa urahisi ruhusa za kupata kwa maombi au watumiaji tofauti bila kuhariri ruhusa za msingi za mfumo wa faili.

  • Kutekeleza saraka ya msingi: Vipengele vya kupata vinaweza kuzuia upatikanaji kwa saraka maalum ndani ya mfumo wa faili wa EFS, kuhakikisha kwamba kila maombi au mtumiaji anafanya kazi ndani ya folda yake iliyotengwa. Hii husaidia kuzuia ufunuo au mabadiliko ya data kwa bahati mbaya.

  • Upatikanaji rahisi wa mfumo wa faili: Vipengele vya kupata vinaweza kuunganishwa na kazi ya AWS Lambda au kazi ya AWS Fargate, ikifanya upatikanaji wa mfumo wa faili kuwa rahisi kwa maombi yasiyo na seva na yaliyo na kontena.

Privesc

pageAWS - EFS Privesc

Baada ya Kudukuliwa

pageAWS - EFS Post Exploitation

Uthabiti

pageAWS - EFS Persistence
Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Last updated