mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-12 15:50:19 -08:00
Translated ['src/pentesting-cloud/aws-security/aws-post-exploitation/aws
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Vulnerabilidade de curinga na conta do AWS MWAA Execution Role
|
||||
|
||||
## A Vulnerabilidade
|
||||
|
||||
O execution role do MWAA (a IAM role que os workers do Airflow usam para acessar recursos da AWS) requer a seguinte policy obrigatória para funcionar:
|
||||
```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-*"
|
||||
}
|
||||
```
|
||||
O curinga (`*`) na posição do ID da conta permite que a role interaja com **any SQS queue in any AWS account** que comece com `airflow-celery-`. Isso é necessário porque a AWS provisiona as filas internas do MWAA em uma conta gerenciada separada pela AWS. Não há restrição para criar filas com o prefixo `airflow-celery-`.
|
||||
|
||||
**Cannot be fixed:** Remover o curinga pre-deployment quebra o MWAA completamente - o scheduler can't queue tasks for workers.
|
||||
|
||||
Documentação verificando a Vuln e reconhecendo o Vectorr: [AWS Documentation](https://docs.aws.amazon.com/mwaa/latest/userguide/mwaa-create-role.html)
|
||||
|
||||
## Exploitation
|
||||
|
||||
Todos os Airflow DAGs run com as permissões da execution role. DAGs são scripts Python que podem executar código arbitrário - eles podem usar `yum` or `curl` para instalar ferramentas, baixar scripts maliciosos, ou importar qualquer biblioteca Python. DAGs são pulled de uma pasta S3 atribuída e run on schedule automaticamente; tudo o que um atacante precisa é da habilidade de PUT nesse caminho do bucket.
|
||||
|
||||
Anyone who can write DAGs (typically most users in MWAA environments) can abuse this permission:
|
||||
|
||||
1. **Data Exfiltration**: Criar uma fila chamada `airflow-celery-exfil` em uma conta externa, escrever um DAG que envie dados sensíveis para ela via `boto3`
|
||||
|
||||
2. **Command & Control**: Poll commands from an external queue, execute them, return results - criando uma backdoor persistente através das SQS APIs
|
||||
|
||||
3. **Cross-Account Attacks**: Inject malicious messages into other organizations' queues if they follow the naming pattern
|
||||
|
||||
Todos os ataques bypass network controls já que usam AWS APIs, não conexões diretas com a internet.
|
||||
|
||||
## Impact
|
||||
|
||||
Esta é uma falha arquitetural no MWAA sem mitigação baseada em IAM. Every MWAA deployment following AWS documentation has this vulnerability.
|
||||
|
||||
**Network Control Bypass:** Esses ataques funcionam mesmo em VPCs privadas sem acesso à internet. As chamadas da SQS API usam a rede interna da AWS e VPC endpoints, contornando completamente os controles tradicionais de segurança de rede, firewalls, egress monitoring. Organizations cannot detect or block this data exfiltration path through network-level controls.
|
||||
Reference in New Issue
Block a user