AWS MWAA 执行角色账户通配符漏洞
Tip
学习并练习 AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
支持 HackTricks
- 查看 subscription plans!
- 加入 💬 Discord group 或者 telegram group 或 关注 我们的 Twitter 🐦 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud github 仓库 提交 PRs 来分享 hacking tricks。
漏洞
MWAA 的执行角色(Airflow workers 用来访问 AWS 资源的 IAM role)需要以下强制策略才能正常工作:
{
"Effect": "Allow",
"Action": [
"sqs:ChangeMessageVisibility",
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:GetQueueUrl",
"sqs:ReceiveMessage",
"sqs:SendMessage"
],
"Resource": "arn:aws:sqs:us-east-1:*:airflow-celery-*"
}
The wildcard (*) in the account ID position allows the role to interact with any SQS queue in any AWS account that starts with airflow-celery-. This is required because AWS provisions MWAA’s internal queues in a separate AWS-managed account. There is no restriction on making queues with the airflow-celery- prefix.
无法修复: 在部署前移除通配符会完全破坏 MWAA —— 调度器无法为 workers 排队任务。
Documentation Verifying Vuln and Acknowledging Vectorr: AWS Documentation
利用
所有 Airflow DAGs 都以执行角色的权限运行。DAGs 是可以执行任意代码的 Python 脚本 —— 它们可以使用 yum 或 curl 安装工具、下载恶意脚本或导入任意 Python 库。DAGs 从分配的 S3 文件夹被拉取并按计划自动运行,攻击者所需的只是能够对该 bucket 路径执行 PUT。
任何能够写入 DAGs 的人(通常是大多数 MWAA 环境中的用户)都可以滥用此权限:
- Data Exfiltration: 在外部账户中创建一个名为
airflow-celery-exfil的 queue,编写一个 DAG 通过boto3将敏感数据发送到该队列 - Command & Control: 从外部队列轮询命令、执行并返回结果 —— 通过 SQS APIs 创建一个持久后门
- Cross-Account Attacks: 如果其他组织遵循相同命名模式,向它们的队列注入恶意消息
所有攻击都绕过网络控制,因为它们使用 AWS APIs,而不是直接的互联网连接。
影响
这是 MWAA 的一个架构缺陷,无法通过基于 IAM 的方式缓解。每个按照 AWS 文档部署的 MWAA 环境都存在此漏洞。
Network Control Bypass: 即使在没有互联网访问的私有 VPCs 中,这些攻击也能奏效。SQS API 调用使用 AWS 的内部网络和 VPC endpoints,完全绕过传统的网络安全控制、防火墙和出口监控。组织无法通过网络级别控制检测或阻止这一 data exfiltration 通路。
Tip
学习并练习 AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
支持 HackTricks
- 查看 subscription plans!
- 加入 💬 Discord group 或者 telegram group 或 关注 我们的 Twitter 🐦 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud github 仓库 提交 PRs 来分享 hacking tricks。
HackTricks Cloud

