AWS - DataPipeline, CodePipeline & CodeCommit Enum

Support HackTricks

DataPipeline

AWS Data Pipeline wurde entwickelt, um den Zugriff, die Transformation und den effizienten Transfer von Daten in großem Maßstab zu erleichtern. Es ermöglicht die folgenden Operationen:

  1. Zugriff auf Ihre Daten, wo sie gespeichert sind: Daten, die in verschiedenen AWS-Diensten gespeichert sind, können nahtlos zugegriffen werden.

  2. Transformation und Verarbeitung in großem Maßstab: Großangelegte Datenverarbeitungs- und Transformationsaufgaben werden effizient bearbeitet.

  3. Effizienter Transfer von Ergebnissen: Die verarbeiteten Daten können effizient an mehrere AWS-Dienste ü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 Speicher-Diensten sowie lokalen Datenquellen in festgelegten Intervallen.

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>

Privesc

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

AWS - Datapipeline Privesc

CodePipeline

AWS CodePipeline ist ein vollständig verwalteter Continuous Delivery-Service, der Ihnen hilft, Ihre Release-Pipelines zu automatisieren für schnelle und zuverlässige Anwendungs- und Infrastruktur-Updates. CodePipeline automatisiert die Build-, Test- und Bereitstellungsphasen Ihres Release-Prozesses jedes Mal, wenn es eine Codeänderung gibt, basierend auf dem Release-Modell, das Sie definieren.

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>

Privesc

In der folgenden Seite können Sie überprüfen, wie man Codepipeline-Berechtigungen missbraucht, um Privilegien zu eskalieren:

AWS - Codepipeline Privesc

CodeCommit

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

Es eliminieren die Anforderung, dass der Benutzer Git kennen und sein eigenes Versionskontrollsystem verwalten oder sich um das Hoch- oder Herunterskalieren seiner Infrastruktur kümmern muss. Codecommit unterstützt alle standardmäßigen Funktionen, die in Git zu finden sind, was bedeutet, dass es mühelos 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

Unterstützen Sie HackTricks

Last updated