AWS - Datapipeline Privesc
datapipeline
有关 datapipeline 的更多信息,请查看:
AWS - DataPipeline, CodePipeline & CodeCommit Enumiam:PassRole
, datapipeline:CreatePipeline
, datapipeline:PutPipelineDefinition
, datappipeline:ActivatePipeline
iam:PassRole
, datapipeline:CreatePipeline
, datapipeline:PutPipelineDefinition
, datappipeline:ActivatePipeline
拥有这些权限的用户可以通过创建数据管道来提升权限,使用分配角色的权限执行任意命令:
在管道创建之后,攻击者会更新其定义以指定特定操作或资源创建:
请注意,第14、15和27行中的角色需要是datapipeline.amazonaws.com可假定的角色,第28行中的角色需要是ec2.amazonaws.com可假定的带有EC2配置文件实例的角色。
此外,EC2实例只能访问可被EC2实例假定的角色(因此您只能窃取该角色)。
攻击者精心制作的管道定义文件包含指令,通过AWS API执行命令或创建资源,利用Data Pipeline的角色权限,可能获取额外的特权。
潜在影响: 直接提升至指定的ec2服务角色。
参考
Last updated