From 2cd10753a80f1969a2796a65232b7ad5f8175b10 Mon Sep 17 00:00:00 2001 From: Translator Date: Thu, 23 Oct 2025 21:53:50 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/aws-security/aws-post-exploitation/aws --- .../aws-mwaa-post-exploitation/README.md | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/pentesting-cloud/aws-security/aws-post-exploitation/aws-mwaa-post-exploitation/README.md diff --git a/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-mwaa-post-exploitation/README.md b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-mwaa-post-exploitation/README.md new file mode 100644 index 000000000..630b8f78a --- /dev/null +++ b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-mwaa-post-exploitation/README.md @@ -0,0 +1,44 @@ +# AWS MWAA Wrażliwość konta Execution Role związana z wildcard + +## Wrażliwość + +Execution role MWAA (rola IAM, której Airflow workers używają do dostępu do zasobów AWS) wymaga tej obowiązkowej polityki, aby działać: +```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-*" +} +``` +Dziki znak (`*`) w pozycji ID konta pozwala roli na interakcję z **dowolną kolejką SQS w dowolnym koncie AWS**, która zaczyna się od `airflow-celery-`. Jest to wymagane, ponieważ AWS tworzy wewnętrzne kolejki MWAA w oddzielnym, zarządzanym przez AWS, koncie. Nie ma ograniczeń dotyczących tworzenia kolejek z prefiksem `airflow-celery-`. + +**Nie można naprawić:** Usunięcie dzikiego znaku przed wdrożeniem całkowicie niszczy MWAA — scheduler nie może wystawiać zadań dla workerów. + +Dokumentacja potwierdzająca podatność i uznająca wektor: [AWS Documentation](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html) + +## Exploitation + +Wszystkie Airflow DAGs działają z uprawnieniami execution role. DAGs są skryptami Python, które mogą wykonać dowolny kod — mogą używać `yum` lub `curl` do instalowania narzędzi, pobierania złośliwych skryptów lub importowania dowolnej biblioteki Python. DAGs są pobierane z przypisanego folderu S3 i uruchamiane automatycznie zgodnie z harmonogramem; wystarczy, że atakujący ma możliwość PUT do tej ścieżki w bucketcie. + +Każdy, kto może pisać DAGs (zwykle większość użytkowników w środowiskach MWAA), może nadużyć tego uprawnienia: + +1. **Data Exfiltration**: Utwórz kolejkę o nazwie `airflow-celery-exfil` w zewnętrznym koncie, napisz DAG, który wyśle do niej wrażliwe dane przez `boto3` + +2. **Command & Control**: Pobieraj polecenia z zewnętrznej kolejki, wykonuj je, zwracaj wyniki — tworząc trwały backdoor przez SQS APIs + +3. **Cross-Account Attacks**: Wstrzykuj złośliwe komunikaty do kolejek innych organizacji, jeśli stosują wzorzec nazewnictwa + +Wszystkie ataki omijają kontrole sieciowe, ponieważ używają AWS APIs, a nie bezpośrednich połączeń internetowych. + +## Impact + +To jest wada architektoniczna w MWAA bez możliwości złagodzenia przez IAM. Każde wdrożenie MWAA zgodne z AWS documentation ma tę podatność. + +**Network Control Bypass:** Te ataki działają nawet w prywatnych VPC bez dostępu do internetu. Wywołania SQS API używają wewnętrznej sieci AWS i endpointów VPC, całkowicie omijając tradycyjne mechanizmy bezpieczeństwa sieci, firewalle i monitorowanie egressu. Organizacje nie mogą wykryć ani zablokować tej ścieżki data exfiltration na poziomie sieciowym.