Автоматизированный CLI для оценки безопасности AWS с 30 модулями, охватывающими повышение привилегий IAM, открытость S3, вычисления, сеть, журналирование и проверки ошибок конфигурации, с формированием аудиторских отчётов в формате Markdown.
Исполнительный отчёт в Markdown
Фреймворк автоматизированной оценки безопасности облака AWS для авторизованных аудитов, тестирования на проникновение и red-team проектов.
AWS Pentest Tool проводит аудит сред AWS на предмет рисков идентификации, публичной экспозиции, утечки секретов, слабых доверительных отношений, пробелов в логировании и ошибок конфигурации облачных сервисов. Он запускает многомодульный конвейер оценки и формирует Markdown-отчёт с отметкой времени, содержащий подсчёт по уровням серьёзности, доказательства, команды proof-of-concept и рекомендации по устранению.
CLI разработан для практической работы в рамках проектов:
boto3reports/Требуется авторизация. Запускайте этот инструмент только против аккаунтов AWS, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение.
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
Проведите более широкую оценку:
python3 aws_agent.py audit --mode all --regions us-east-1,eu-west-1 --output reports
Запустите целевое сканирование сервисов:
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
| Режим | Область | Рекомендуемое использование |
|---|---|---|
recon | Проверки базовой идентификации, хранилища, вычислений, serverless, сети, логирования и управления | Быстрая первичная оценка |
loot | recon плюс углублённые проверки сети, RDS, KMS, секретов, ECR, EBS и CloudTrail | Обзор конфиденциальных данных и экспозиции |
all | Полный доступный путь сканирования | Полное обследование или финальная валидация |
Пример:
python3 aws_agent.py audit --mode all --profile security-audit --regions us-east-1,eu-west-1
| Команда | Назначение |
|---|---|
configure | Сохранить учётные данные AWS в локальный файл .env с правами 0600 |
audit | Запустить полную оркестрированную оценку и сгенерировать отчёт в формате Markdown |
exploit-iam | Показать результаты повышения привилегий в IAM и команды proof-of-concept |
exploit-s3 | Показать сведения о доступности S3 и подсказки по эксплуатации для каждого бакета |
backdoor-create | Создать постоянного администратора IAM; деструктивная операция, защищённая подтверждением |
| Команда | Модуль | Основные проверки |
|---|---|---|
scan-sts | STS Cross-Account | Рискованные политики доверия, слабая конфигурация ExternalId, провайдеры OIDC, цепочки ролей |
scan-apigw | API Gateway | Отсутствие аутентификации, слабые политики ресурсов, пробелы в WAF, проблемы JWT/CORS |
scan-cognito | Cognito | Пулы идентификаторов без аутентификации, слабая конфигурация MFA, доступность клиентов приложений |
scan-dynamodb | DynamoDB | Шифрование, PITR, потоки, политики ресурсов |
scan-sqs-sns | SQS / SNS | Публичные политики, HTTP-подписки, отсутствие шифрования на стороне сервера |
scan-cfn | CloudFormation | Секреты в выходах, риск привилегий роли стека, дрейф |
scan-dns | Route53 | Кандидаты на захват поддоменов, DNSSEC, риск делегирования NS |
scan-codebuild | CodeBuild / CodePipeline | Секреты в открытом виде, привилегированный режим, шифрование артефактов |
scan-waf | AWS WAF | Действие по умолчанию, отсутствие управляемых правил, ограничение частоты запросов, логирование |
scan-scp | AWS Organizations SCP | Покрытие защитными ограничениями, отсутствие критических запретов, членство в организации |
scan-sfn | Step Functions / EventBridge | Публичные шины событий, кросс-аккаунтные цели, логирование и секреты конечных автоматов |
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