AWS - DataPipeline, CodePipeline & CodeCommit Enum

Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

DataPipeline

AWS Data Pipeline ist darauf ausgelegt, den Zugriff, die Transformation und den effizienten Transfer von Daten im großen Maßstab zu erleichtern. Es ermöglicht die Durchführung der folgenden Operationen:

  1. Greifen Sie auf Ihre Daten zu, wo sie gespeichert sind: Daten, die in verschiedenen AWS-Services gespeichert sind, können nahtlos abgerufen werden.

  2. Transformieren und Verarbeiten im großen Maßstab: Aufgaben zur Verarbeitung und Transformation von Daten im großen Maßstab werden effizient bearbeitet.

  3. Effiziente Übertragung von Ergebnissen: Die verarbeiteten Daten können effizient zu mehreren AWS-Services übertragen werden, einschließlich:

  • Amazon S3

  • Amazon RDS

  • Amazon DynamoDB

  • Amazon EMR

Im Wesentlichen optimiert AWS Data Pipeline die Bewegung und Verarbeitung von Daten zwischen verschiedenen AWS-Compute- und Speicherdiensten sowie lokalen Datenquellen zu festgelegten Zeitintervallen.

Enumeration

aws datapipeline list-pipelines
aws datapipeline describe-pipelines --pipeline-ids <ID>
aws datapipeline list-runs --pipeline-id <ID>
aws datapipeline get-pipeline-definition --pipeline-id <ID>

Privilege Escalation

Auf der folgenden Seite können Sie überprüfen, wie Sie Datenpipelinberechtigungen missbrauchen, um Berechtigungen zu eskalieren:

pageAWS - Datapipeline Privesc

CodePipeline

AWS CodePipeline ist ein vollständiger Continuous-Delivery-Service, der Ihnen hilft, Ihre Freigabepipelines zu automatisieren für schnelle und zuverlässige Anwendungs- und Infrastrukturaktualisierungen. CodePipeline automatisiert die Build-, Test- und Bereitstellungsphasen Ihres Freigabeprozesses jedes Mal, wenn eine Codeänderung vorliegt, basierend auf dem von Ihnen definierten Freigabemodell.

Enumeration

aws codepipeline list-pipelines
aws codepipeline get-pipeline --name <pipeline_name>
aws codepipeline list-action-executions --pipeline-name <pl_name>
aws codepipeline list-pipeline-executions --pipeline-name <pl_name>
aws codepipeline list-webhooks
aws codepipeline get-pipeline-state --name <pipeline_name>

Privilege Escalation

Auf der folgenden Seite können Sie überprüfen, wie Sie CodePipeline-Berechtigungen missbrauchen, um Privilegien zu eskalieren:

pageAWS - Codepipeline Privesc

CodeCommit

Es handelt sich um einen Versionskontrolldienst, der von Amazon gehostet und vollständig verwaltet wird und verwendet werden kann, um Daten (Dokumente, Binärdateien, Quellcode) privat zu speichern und in der Cloud zu verwalten.

Es eliminiert die Notwendigkeit für den Benutzer, Git zu kennen und ihr eigenes Quellcodeverwaltungssystem zu verwalten oder sich um das Skalieren ihrer Infrastruktur zu kümmern. CodeCommit unterstützt alle standardmäßigen Funktionalitäten, die in Git gefunden werden können, was bedeutet, dass es reibungslos mit den aktuellen Git-basierten Tools des Benutzers funktioniert.

Enumeration

# Repos
aws codecommit list-repositories
aws codecommit get-repository --repository-name <name>
aws codecommit get-repository-triggers --repository-name <name>
aws codecommit list-branches --repository-name <name>
aws codecommit list-pull-requests --repository-name <name>

# Approval rules
aws codecommit list-approval-rule-templates
aws codecommit get-approval-rule-template --approval-rule-template-name <name>
aws codecommit list-associated-approval-rule-templates-for-repository --repository-name <name>

# Get & Put files
## Get a file
aws codecommit get-file --repository-name backend-api --file-path app.py
## Put a file
aws codecommit get-branch --repository-name backend-api --branch-name master
aws codecommit put-file --repository-name backend-api --branch-name master --file-content fileb://./app.py --file-path app.py --parent-commit-id <commit-id>

# SSH Keys & Clone repo
## Get codecommit keys
aws iam list-ssh-public-keys #User keys for CodeCommit
aws iam get-ssh-public-key --user-name <username> --ssh-public-key-id <id> --encoding SSH #Get public key with metadata
# The previous command will give you the fingerprint of the ssh key
# With the next command you can check the fingerprint of an ssh key and compare them
ssh-keygen -f .ssh/id_rsa -l -E md5

# Clone repo
git clone ssh://<SSH-KEY-ID>@git-codecommit.<REGION>.amazonaws.com/v1/repos/<repo-name>

Referenzen

Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated