Информационная безопасность
Безопасность AWS/GCP/Azure
2020 год. SolarWinds. Компрометированные организации включали Microsoft, FireEye, US Treasury. Анализ показал: многие жертвы имели AWS аккаунты с CloudTrail отключённым или неправильно настроенным. Security Groups разрешали egress без ограничений. KMS не использовался для критических данных. Инфраструктура была у AWS, но конфигурация - у команд без security culture. Shared Responsibility Model - не теория.
- Capital One 2019: IAM misconfiguration + SSRF = 106M records. AWS инфраструктура не была взломана - конфигурация клиента
- Twitch 2021: S3 bucket без шифрования и с неправильным ACL - 125GB данных включая исходный код
- AWS Bucket Finder research: каждый день находят тысячи публично открытых S3 buckets с чувствительными данными
Security Groups: брандмауэр уровня инстанса
2020 год. SolarWinds hack. Одна из причин масштаба: скомпрометированные системы имели неограниченный egress - они могли делать запросы к любому внешнему адресу. AWS Security Groups - stateful firewall для EC2/ECS: контроль входящего и исходящего трафика на уровне экземпляра.
AWS VPC Flow Logs - запись метаданных всего сетевого трафика (не payload): source/dest IP, port, bytes, action (ACCEPT/REJECT). Анализ аномалий: необычный egress, сканирование портов, lateral movement внутри VPC.
RDS PostgreSQL Security Group должна разрешать входящий трафик от App Server. Какой source правильный?
KMS: управление ключами шифрования
AWS KMS (Key Management Service) - managed сервис для создания и управления cryptographic keys. Ключи никогда не покидают KMS HSM (Hardware Security Module). Приложение получает зашифрованный data key, использует его, ключ шифруется KMS CMK. Envelope encryption.
KMS Key Rotation: включить automatic annual rotation. При ротации новые данные шифруются новым key material, старые версии сохраняются для decrypt существующих данных. Прозрачно для приложения.
Приложение хранит sensitive данные в S3 с SSE-KMS. KMS ключ скомпрометирован. Что нужно сделать?
WAF: Web Application Firewall
AWS WAF, Cloudflare WAF, Azure Front Door - WAF блокирует известные паттерны атак: SQL injection, XSS, CVE эксплоиты, DDoS. Работает на Layer 7 (HTTP). Не замена правильному коду, но эффективный дополнительный слой.
WAF не заменяет фиксирование уязвимостей в коде. Bypass техники: обфускация payload (URL encoding, comment injection), разбивка на фрагменты, HTTP parameter pollution. WAF - один слой в defense in depth, не последняя линия.
WAF заблокировал легитимный запрос от корпоративного сканера безопасности. Что делать?
CloudTrail: аудит всех cloud действий
AWS CloudTrail логирует каждый API вызов в аккаунте: кто, что, когда, с какого IP. Это основа forensics и incident response в AWS. Без CloudTrail - невозможно понять что произошло при инциденте.
GuardDuty - AWS threat detection использующий CloudTrail, VPC Flow Logs и DNS Logs. ML модели обнаруживают: cryptocurrency mining, backdoor C2 traffic, credential compromise (unusual API calls from new IP), data exfiltration (large S3 download).
Если облачный провайдер защищает инфраструктуру - клиент не несёт ответственности за безопасность
Shared Responsibility Model: AWS отвечает за безопасность облака (физика, hardware, hypervisor). Клиент отвечает за безопасность в облаке (IAM, Security Groups, шифрование, конфигурацию сервисов, данные).
Capital One был взломан не через уязвимость AWS - через misconfigured IAM policy в аккаунте клиента. AWS инфраструктура была защищена. Конфигурация - ответственность клиента.
Атакующий получил доступ к AWS аккаунту. Первое действие - отключить CloudTrail чтобы скрыть следы. Что помогает это обнаружить?
Итоги
- Security Groups: stateful firewall для EC2. Least privilege: только нужные порты, SG reference вместо IP ranges для internal трафика
- KMS: envelope encryption, ключи в HSM, CloudTrail audit каждого decrypt. Automatic key rotation, re-encryption при компрометации
- WAF: Managed Rules для OWASP Top 10, rate limiting, geo-blocking. Defense in depth, не замена правильному коду
- CloudTrail: все API вызовы, во всех регионах, log file validation. Alarm на StopLogging. S3 Object Lock для защиты логов
Связанные темы
AWS/GCP/Azure security инструменты строятся поверх IAM:
- IAM и управление доступом — IAM roles для всех cloud сервисов - фундамент
- Шифрование данных — KMS - инструмент шифрования at rest в cloud
- SIEM и мониторинг — CloudTrail logs -> SIEM для correlation и alerting
Вопросы для размышления
- Включён ли CloudTrail в multi-region mode? Есть ли alarm на StopLogging?
- Какие S3 buckets имеют public access? Используется ли S3 Block Public Access на уровне аккаунта?
- Используется ли KMS для шифрования RDS, S3, EBS? Кто имеет kms:Decrypt права?