
Uma ferramenta de auditoria de segurança de linha de comando para Amazon Web Services
Uma ferramenta de auditoria de segurança em linha de comando para Amazon Web Services
Cloud Security Audit é uma ferramenta de linha de comando que verifica vulnerabilidades na sua conta AWS. De forma fácil, você será capaz de identificar partes inseguras da sua infraestrutura e preparar sua conta AWS para uma auditoria de segurança.
Atualmente, o Cloud Security Audit não suporta nenhum gerenciador de pacotes, mas o trabalho está em andamento.
Primeiro, você precisa baixar o Cloud Security Audit para o seu workspace GO:
$GOPATH $ go get github.com/Appliscale/cloud-security-audit
$GOPATH $ cd cloud-security-audit
Em seguida, compile e instale a configuração para a aplicação dentro do diretório cloud-security-audit executando:
cloud-security-audit $ make all
Se você estiver usando MFA, você precisa informar ao Cloud Security Audit para autenticar você antes de tentar conectar usando a flag --mfa.
Exemplo:
$ cloud-security-audit --service s3 --mfa --mfa-duration 3600
Para realizar a auditoria em todas as instâncias EC2, digite:
$ cloud-security-audit --service ec2
Você pode restringir a auditoria a uma região usando a flag -r ou --region. O Cloud Security Audit também suporta perfis AWS - para especificar o perfil, use a flag -p ou --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 contém informações sobre onde a instância está localizada.EC2 contém o ID da instância.Volumes contém IDs dos volumes (discos virtuais) anexados à EC2. Significado dos sufixos:
[NONE] - Volume não criptografado.[DKMS] - Volume criptografado usando a Chave KMS Padrão da AWS. Mais sobre KMS você pode encontrar aquiSecurity Groups contém IDs de grupos de segurança que têm permissões muito abertas. Ex.: bloco CIDR igual a 0.0.0.0/0 (aberto para o mundo inteiro).EC2 TAGS contém tags de uma determinada instância EC2 para ajudar a identificar a finalidade desta instância.Você pode encontrar mais informações sobre criptografia na seguinte documentação:
Para realizar a auditoria em todos os buckets S3, digite:
$ cloud-security-audit --service s3
O Cloud Security Audit suporta perfis AWS - para especificar o perfil, use a flag -p ou --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 contém os nomes dos buckets S3.DEFAULT SSE fornece informações sobre qual tipo padrão de criptografia do lado do servidor foi usado no seu bucket S3:
NONE - SSE padrão não ativado.DKMS - SSE padrão ativado, Chave KMS da AWS usada para criptografar dados.AES256 - SSE padrão ativado, AES256.LOGGING ENABLED contém informações se o registro de acesso ao servidor foi ativado para um determinado bucket S3. Isso fornece registros detalhados das solicitações feitas a um bucket S3. Mais informações sobre o registro de acesso ao servidor podem ser encontradas aquiACL IS PUBLIC fornece informações se a ACL (Lista de Controle de Acesso) contém permissões que tornam o bucket público (permitem leitura/gravação para qualquer um). Mais informações sobre ACLs aquiPOLICY IS PUBLIC contém informações se a política do bucket permite qualquer ação (leitura/gravação) para um usuário anônimo. Mais sobre políticas de bucket aqui
As letras R, W e D descrevem qual tipo de ação está disponível para todos.Você pode encontrar mais sobre como proteger seus S3 nas seguintes documentações: