mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-07-28 22:51:09 -07:00
Translated ['src/pentesting-cloud/aws-security/aws-post-exploitation/aws
This commit is contained in:
+44
@@ -0,0 +1,44 @@
|
||||
# AWS MWAA Execution Role Account Wildcard Vulnerability
|
||||
|
||||
## The Vulnerability
|
||||
|
||||
Виконавча роль MWAA (IAM role, яку Airflow workers використовують для доступу до AWS resources) потребує цієї обов'язкової політики для роботи:
|
||||
```json
|
||||
{
|
||||
"Effect": "Allow",
|
||||
"Action": [
|
||||
"sqs:ChangeMessageVisibility",
|
||||
"sqs:DeleteMessage",
|
||||
"sqs:GetQueueAttributes",
|
||||
"sqs:GetQueueUrl",
|
||||
"sqs:ReceiveMessage",
|
||||
"sqs:SendMessage"
|
||||
],
|
||||
"Resource": "arn:aws:sqs:us-east-1:*:airflow-celery-*"
|
||||
}
|
||||
```
|
||||
Знак підстановки (`*`) у позиції ідентифікатора облікового запису дозволяє ролі взаємодіяти з **any SQS queue in any AWS account**, які починаються з `airflow-celery-`. Це необхідно, оскільки AWS розгортає внутрішні черги MWAA в окремому обліковому записі, яким керує AWS. Немає обмежень на створення черг із префіксом `airflow-celery-`.
|
||||
|
||||
**Не можна виправити:** Видалення символа підстановки перед розгортанням повністю ламає MWAA — планувальник не зможе ставити завдання в чергу для воркерів.
|
||||
|
||||
Документація, що підтверджує Vuln та визнає Vectorr: [AWS Documentation](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html)
|
||||
|
||||
## Exploitation
|
||||
|
||||
Всі Airflow DAGs виконуються з правами execution role. DAGs — це Python-скрипти, які можуть виконувати довільний код — вони можуть використовувати `yum` або `curl` для встановлення інструментів, завантаження шкідливих скриптів або імпорту будь-якої Python-бібліотеки. DAGs витягуються з призначеної папки в S3 і виконуються за розкладом автоматично; нападнику достатньо мати можливість робити PUT у цей шлях бакета.
|
||||
|
||||
Кожен, хто може записувати DAGs (зазвичай більшість користувачів у середовищах MWAA), може зловживати цією дозволом:
|
||||
|
||||
1. Data Exfiltration: Створити чергу з ім'ям `airflow-celery-exfil` в зовнішньому обліковому записі, написати DAG, який відправляє конфіденційні дані туди через `boto3`
|
||||
|
||||
2. Command & Control: Опитувати команди з зовнішньої черги, виконувати їх, повертати результати — створюючи стійкий бекдор через SQS APIs
|
||||
|
||||
3. Cross-Account Attacks: Вставляти шкідливі повідомлення в черги інших організацій, якщо вони дотримуються цього шаблону імен
|
||||
|
||||
Всі атаки обходять мережевий контроль, оскільки використовують AWS APIs, а не прямі інтернет-з'єднання.
|
||||
|
||||
## Impact
|
||||
|
||||
Це архітектурний дефект у MWAA без можливості пом'якшення через IAM. Кожне розгортання MWAA, що слідує документації AWS, має цю вразливість.
|
||||
|
||||
**Network Control Bypass:** Ці атаки працюють навіть у приватних VPCs без доступу до інтернету. Виклики SQS API використовують внутрішню мережу AWS та VPC endpoints, повністю обходячи традиційні мережеві засоби безпеки, файрволи та egress monitoring. Організації не можуть виявити або заблокувати цей data exfiltration path через мережеві засоби контролю.
|
||||
Reference in New Issue
Block a user