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..cdd6f3835 --- /dev/null +++ b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-mwaa-post-exploitation/README.md @@ -0,0 +1,44 @@ +# AWS MWAA Execution Role Account Wildcard Vulnerability + +## Ranljivost + +Execution role MWAA-a (IAM role koju Airflow workers koriste za pristup AWS resursima) zahteva ovu obaveznu politiku da bi funkcionisala: +```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-*" +} +``` +Znak zvezdica (`*`) u poziciji account ID-ja omogućava ulozi da interaguje sa **bilo kojom SQS queue u bilo kom AWS account-u** koja počinje sa `airflow-celery-`. Ovo je neophodno zato što AWS provajduje MWAA-ine interne queue-e u odvojenom, AWS-managed account-u. Ne postoji ograničenje za kreiranje queue-eva sa prefiksom `airflow-celery-`. + +**Ne može se popraviti:** Uklanjanje zvezdice pre deploy-a potpuno kvari MWAA — scheduler ne može da queue-uje zadatke za workere. + +Documentation Verifying Vuln and Acknowledging Vectorr: [AWS Documentation](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html) + +## Eksploatacija + +Svi Airflow DAGs se izvršavaju sa permisijama execution role-a. DAGs su Python skripte koje mogu da izvrše proizvoljan kod — mogu koristiti `yum` ili `curl` za instaliranje alata, preuzimanje zlonamernih skripti ili uvoz bilo koje Python biblioteke. DAGs se povlače iz dodeljenog S3 foldera i automatski se pokreću po rasporedu; sve što napadaču treba je mogućnost da PUT-uje na taj bucket path. + +Bilo ko ko može da piše DAGs (obično većina korisnika u MWAA okruženjima) može zloupotrebiti ovu dozvolu: + +1. **Data Exfiltration**: Kreirati queue nazvan `airflow-celery-exfil` u eksternom account-u, napisati DAG koji šalje osetljive podatke tamo koristeći `boto3` + +2. **Command & Control**: Poll-ovati komande iz eksternog queue-a, izvršavati ih, vraćati rezultate — stvarajući persistent backdoor preko SQS API-ja + +3. **Cross-Account Attacks**: Inject-ovati zlonamerne poruke u queue-e drugih organizacija ako slede obrazac imenovanja + +Svi napadi zaobilaze mrežne kontrole pošto koriste AWS APIs, a ne direktne internet konekcije. + +## Uticaj + +Ovo je arhitektonski nedostatak u MWAA bez mogućnosti mitigacije zasnovane na IAM-u. Svaka MWAA deployment koja prati AWS dokumentaciju ima ovu ranjivost. + +**Network Control Bypass:** Ovi napadi funkcionišu čak i u privatnim VPC-ima bez internet pristupa. Pozivi SQS API-ja koriste AWS-ovu internu mrežu i VPC endpoints, potpuno zaobilazeći tradicionalne mrežne bezbednosne kontrole, firewalle i egress monitoring. Organizacije ne mogu detektovati niti blokirati ovaj data exfiltration put putem mrežnih kontrola.