CLI automatizzata per la valutazione della sicurezza AWS con 30 moduli che coprono l'escalation dei privilegi IAM, l'esposizione S3, il calcolo, la rete, il logging e i controlli di misconfigurazione, producendo report di audit in Markdown.
Framework automatizzato per la valutazione della sicurezza del cloud AWS, pensato per audit autorizzati, penetration test e attività di red team.
AWS Pentest Tool analizza gli ambienti AWS alla ricerca di rischi legati alle identità, esposizione pubblica, fuga di segreti, relazioni di trust deboli, lacune nella registrazione dei log e configurazioni errate dei servizi cloud. Esegue una pipeline di valutazione multi-modulo e produce un report Markdown con timestamp, conteggi per severità, evidenze, comandi proof-of-concept e indicazioni di remediation.
La CLI è progettata per attività operative concrete:
boto3reports/Autorizzazione necessaria. Eseguire questo strumento solo su account AWS di proprietà o per i quali si dispone di esplicita autorizzazione scritta al test.
git clone https://github.com/capture0x/aws-pentest.git
cd aws-pentest
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python3 aws_agent.py configure
python3 aws_agent.py audit --mode recon
Esegui una valutazione più ampia:
python3 aws_agent.py audit --mode all --regions us-east-1,eu-west-1 --output reports
Esegui una scansione mirata dei servizi:
python3 aws_agent.py scan-sts
python3 aws_agent.py scan-apigw --regions us-east-1,us-west-2
python3 aws_agent.py scan-dns --region us-east-1
| Modalità | Ambito | Utilizzo consigliato |
|---|---|---|
recon | Controlli su identità principale, storage, compute, serverless, rete, logging e governance | Valutazione iniziale rapida |
loot | recon più controlli approfonditi su rete, RDS, KMS, secrets, ECR, EBS e CloudTrail | Revisione di dati sensibili ed esposizione |
all | Percorso di scansione completo disponibile | Ingaggio completo o validazione finale |
Esempio:
python3 aws_agent.py audit --mode all --profile security-audit --regions us-east-1,eu-west-1
| Comando | Scopo |
|---|---|
configure | Salva le credenziali AWS in un file .env locale con permessi 0600 |
audit | Esegue la valutazione orchestrata completa e genera un report Markdown |
exploit-iam | Mostra i risultati di privilege escalation IAM e i comandi proof-of-concept |
exploit-s3 | Mostra l'esposizione S3 e i suggerimenti di sfruttamento per bucket |
backdoor-create | Crea un utente amministratore IAM persistente; distruttivo e protetto da conferma |
| Comando | Modulo | Controlli principali |
|---|---|---|
scan-sts | STS Cross-Account | Policy di trust rischiose, postura ExternalId debole, provider OIDC, catene di ruoli |
scan-apigw | API Gateway | Autenticazione mancante, policy delle risorse deboli, lacune WAF, problemi JWT/CORS |
scan-cognito | Cognito | Identity pool non autenticati, postura MFA debole, esposizione degli app client |
scan-dynamodb | DynamoDB | Crittografia, PITR, stream, policy delle risorse |
scan-sqs-sns | SQS / SNS | Policy pubbliche, sottoscrizioni HTTP, crittografia lato server mancante |
scan-cfn | CloudFormation | Output contenenti segreti, rischio di privilegi del ruolo dello stack, drift |
scan-dns | Route53 | Candidati al subdomain takeover, DNSSEC, rischio di delega NS |
scan-codebuild | CodeBuild / CodePipeline | Segreti in chiaro, modalità privilegiata, crittografia degli artefatti |
scan-waf | AWS WAF | Azione predefinita, regole gestite mancanti, rate limiting, logging |
scan-scp | AWS Organizations SCP | Copertura delle guardrail, deny critici mancanti, appartenenza all'organizzazione |
scan-sfn | Step Functions / EventBridge | Event bus pubblici, target cross-account, logging e segreti delle state machine |
python3 aws_agent.py audit --mode recon
python3 aws_agent.py audit --mode all --regions us-east-1,eu-west-1 --output /tmp/audit
python3 aws_agent.py audit --mode recon --auto-backdoor --verbose
python3 aws_agent.py exploit-iam --identity user/pentest-user
python3 aws_agent.py exploit-iam --auto-assume-role
python3 aws_agent.py exploit-s3 --bucket example-bucket
python3 aws_agent.py backdoor-create --dry-run
python3 aws_agent.py backdoor-create --user-name authorized-test-admin