
Инструмент аудита безопасности командной строки для Amazon Web Services
Инструмент командной строки для аудита безопасности Amazon Web Services
Cloud Security Audit — это инструмент командной строки, который сканирует уязвимости в вашем аккаунте AWS. Простым способом вы сможете выявить незащищенные части вашей инфраструктуры и подготовить аккаунт AWS к аудиту безопасности.
В настоящее время Cloud Security Audit не поддерживает менеджеры пакетов, но работа над этим ведется.
Прежде всего, необходимо загрузить Cloud Security Audit в ваше рабочее пространство GO:
$GOPATH $ go get github.com/Appliscale/cloud-security-audit
$GOPATH $ cd cloud-security-audit
Затем соберите и установите конфигурацию для приложения внутри каталога cloud-security-audit, выполнив:
cloud-security-audit $ make all
Если вы используете MFA, необходимо указать Cloud Security Audit аутентифицировать вас перед попыткой подключения с помощью флага --mfa.
Пример:
$ cloud-security-audit --service s3 --mfa --mfa-duration 3600
Чтобы выполнить аудит всех экземпляров EC2, введите:
$ cloud-security-audit --service ec2
Вы можете сузить аудит до региона, используя флаг -r или --region. Cloud Security Audit также поддерживает профили AWS — чтобы указать профиль, используйте флаг -p или --profile.
+---------------+---------------------+--------------------------------+-----------------------------------+----------+
| AVAILABILITY | EC2 | VOLUMES | SECURITY | |
| | | | | EC2 TAGS |
| ZONE | | (NONE) - NOT ENCRYPTED | GROUPS | |
| | | | | |
| | | (DKMS) - ENCRYPTED WITH | (INCOMING CIDR = 0.0.0.0/0) | |
| | | DEFAULT KMSKEY | | |
| | | | ID : PROTOCOL : PORT | |
+---------------+---------------------+--------------------------------+-----------------------------------+----------+
| eu-central-1a | i-0fa345j6756nb3v23 | vol-0a81288qjd188424d[DKMS] | sg-aaaaaaaa : tcp : 22 | App:some |
| | | vol-0c2834re8dfsd8sdf[NONE] | sg-aaaaaaaa : tcp : 22 | Key:Val |
+---------------+---------------------+--------------------------------+-----------------------------------+----------+
AVAILABILITY ZONE содержит информацию о том, где размещен экземплярEC2 содержит идентификатор экземпляра.Volumes содержит идентификаторы подключенных томов (виртуальных дисков) к данному EC2. Значения суффиксов:
[NONE] - Том не зашифрован.[DKMS] - Том зашифрован с использованием ключа AWS KMS по умолчанию. Подробнее о KMS можно узнать здесьSecurity Groups содержит идентификаторы групп безопасности, имеющих слишком открытые разрешения. Например, блок CIDR равен 0.0.0.0/0 (открыт для всего мира).EC2 TAGS содержит теги данного экземпляра EC2, чтобы помочь вам определить назначение этого экземпляра.Более подробную информацию о шифровании можно найти в следующей документации:
Чтобы выполнить аудит всех корзин S3, введите:
$ cloud-security-audit --service s3
Cloud Security Audit поддерживает профили AWS — чтобы указать профиль, используйте флаг -p или --profile.
+------------------------------+---------+---------+-------------+------------+
| BUCKET NAME | DEFAULT | LOGGING | ACL | POLICY |
| | | | | |
| | SSE | ENABLED | IS PUBLIC | IS PUBLIC |
| | | | | |
| | | | R - READ | R - READ |
| | | | | |
| | | | W - WRITE | W - WRITE |
| | | | | |
| | | | D - DELETE | D - DELETE |
+------------------------------+---------+---------+-------------+------------+
| bucket1 | NONE | true | false | false |
+------------------------------+---------+---------+-------------+------------+
| bucket2 | DKMS | false | false | true [R] |
+------------------------------+---------+---------+-------------+------------+
| bucket3 | AES256 | false | true [RWD] | false |
+--------------------------- --+---------+---------+-------------+------------+
BUCKET NAME содержит имена корзин S3.DEFAULT SSE предоставляет информацию о том, какой тип шифрования на стороне сервера по умолчанию использовался в вашей корзине S3:NONE - Шифрование на стороне сервера по умолчанию не включено.DKMS - Шифрование на стороне сервера по умолчанию включено, для шифрования данных используется ключ AWS KMS.AES256 - Шифрование на стороне сервера по умолчанию включено, AES256.LOGGING ENABLED содержит информацию о том, включено ли ведение журнала доступа к серверу для данной корзины S3. Это предоставляет подробные записи запросов, которые выполняются к корзине S3. Более подробную информацию о ведении журнала доступа к серверу можно найти здесьACL IS PUBLIC предоставляет информацию о том, содержит ли ACL (список управления доступом) разрешения, которые делают корзину общедоступной (разрешают чтение/запись для всех). Подробнее об ACL здесьPOLICY IS PUBLIC содержит информацию о том, разрешает ли политика корзины какое-либо действие (чтение/запись) анонимному пользователю. Подробнее о политиках корзин здесь
Буквы R, W и D описывают, какое действие доступно для всех.Более подробную информацию о защите ваших S3 можно найти в следующей документации: