25 de março de 2024
AWS: Recomendações de segurança para Security Groups
Neste artigo falaremos sobre os grupos de segurança da AWS. Embora não tenham nenhuma complexidade ao configurá-los, vários fatores devem ser considerados para manter um alto nível de segurança em sua infraestrutura. Um grupo de segurança nada mais é do que um firewall virtual que controla o tráfego. Portanto, mencionaremos várias práticas recomendadas para proteger os serviços. Muitas dessas práticas devem ser automatizadas para agilizar os processos.
O que entendemos por Security Groups?
Um security group funciona como um firewall virtual que controla a entrada e saída de tráfego das instâncias de EC2. Todas as instâncias devem ter associado um grupo de segurança. No caso de que não esteja especificado no momento de criar a instância, então é utilizado por padrão o grupo de segurança padrão da VPC. Um grupo de segurança padrão é denominado default, e a AWS lhe atribui um ID.
Como criar um grupo de Segurança com o console AWS?
- Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.
- No painel de navegação, escolha Security Groups (Grupos de segurança).
- Escolha Create Security Group (Criar grupo de segurança).
- Digite um nome para o grupo de segurança (por exemplo, my-security-group) e forneça uma descrição.
- Em VPC, selecione o ID da sua VPC.
- (Opcional) Adicione ou remova uma etiqueta.
- [Adicionar uma etiqueta] Escolha Adicionar etiqueta e faça o seguinte:
- Em Key (Chave), digite o nome da chave.
- Em Value (Valor), digite o valor da chave.
- [Remover uma etiqueta] Escolha Remover à direita da chave e do valor da etiqueta.
- Selecione Create (Criar).
Recomendações de segurança para security groups da AWS
- Ativar o serviço VPC Flow Logs na sua VPC ou em qualquer nível de ENI (Elastic Network Interfaces). VPC Flow Logs pode ser configurado para aceitar e rejeitar todas as entradas que ocorrem através dos grupos de segurança para os diferentes serviços, como EC2, ELB ou RDS. As entradas registradas no VPC Flow Logs nos ajudarão a detectar ataques e atividades anormais.
- Deve-se usar AWS IAM (Identity and Access Management) para controlar os usuários da sua empresa que podem criar/modificar grupos de segurança. Portanto, que apenas tenham permissões os trabalhadores que sejam estritamente necessários.
- Ativar os logs do AWS CloudTrail para registrar todos os eventos dos grupos de segurança. Para alguns registros, você pode criar um e-mail automático que o informará no momento do evento, permitindo que você o revise imediatamente.
- Criar uma nomenclatura descritiva para os grupos de segurança. Dessa forma, com o nome você obtém informações do grupo correspondente. Pense que com o tempo você evitará a desordem. O conveniente é criar uma nomenclatura abreviando com 1 ou 2 caracteres as características do grupo que podem ser. O tipo de sistema operacional, tipo de ambiente, a região da AWS, o tipo de aplicação. Tenha em mente que o nome do grupo não deve ser tão explícito à primeira vista. Por exemplo, se você colocar o nome WinWebProdCRM, estará indicando aos hackers para que você usa esse grupo de segurança. Uma solução seria 0-Win 1-Linux, A-Produção, B-Desenvolvimento, C-Teste.
- Ao aplicar a nomenclatura para os grupos de segurança, recomenda-se eliminar os grupos que não a cumpram.
- Quando uma VPC é criada, um grupo de segurança padrão é criado automaticamente. Se ao criar uma instância, você não atribuir um grupo de segurança criado por você, a AWS o atribui por padrão. Isso não é uma boa prática. O recomendável é aplicar um grupo de segurança específico cada vez que uma instância for criada.
- Vigiar ao associar vários grupos de segurança a uma instância, dado que se cria um conjunto de regras. AWS utilizará este conjunto de regras para determinar se o acesso é permitido ou não e sempre prevalecerá a mais permissiva. Portanto, se uma instância EC2 tiver dois grupos de segurança associados, em um grupo há uma regra que permite o acesso pela porta 22 a partir da máquina 52.63.1.100 e outro grupo com uma regra que permite o acesso pela porta 22 para todo o mundo, a AWS aplica a mais permissiva e será possível acessar a partir de qualquer endereço pela porta 22.
- Uma recomendação consiste em não criar um grupo de segurança que tenha muitas portas abertas para todo o mundo. Por exemplo, se for um servidor web, abriremos apenas as portas HTTP e HTTPS para o tráfego de entrada: 0.0.0.0/0,TCP, 80 0.0.0.0/0,TCP, 443
- Não lançar servidores com portas padrão abertas como podem ser as 3306, 1630, 1433. Isso cria uma pequena camada de defesa para o grupo de segurança porque os hackers não saberiam quais portas atacar.
- Em algumas ocasiões, seja para uma intervenção externa ou para qualquer tipo de testes, deverão ser criadas momentaneamente regras excessivamente permissivas, o correto seria automatizar essa operação de forma que o grupo de segurança seja excluído automaticamente após X minutos.
- Tentar evitar abrir a porta SSH para outras instâncias do ambiente de produção. Se possível, abrir a porta SSH apenas para hosts da mesma VPC.
- Depois de mencionar a 11, fica claro que se deve evitar abrir a porta SSH para todo mundo. É muito comum aplicar esta regra às instâncias caso haja qualquer incidente e seja necessário acessar remotamente. É rápido e simples criar uma regra de segurança para dar acesso a um IP pela porta SSH caso seja necessário o acesso remoto em um determinado momento.
- Evitar abrir portas para os protocolos UDP ou ICMP em instâncias privadas.
- Evite também abrir intervalos de portas. Você pode adicionar um grande número de linhas de regras nos grupos de segurança para não precisar abrir diretamente intervalos.
- As instâncias que estão na rede privada devem ser abertas para os intervalos de IP da sua VPC, não faz sentido abrir para todo o mundo (0.0.0.0/0) se só será possível acessar a partir da sua VPC.
- Aplicar também regras de segurança de saída sempre que for aplicável dentro da sua VPC. Por exemplo, aplicar regra para restringir uma conexão FTP de qualquer servidor da internet para a sua VPC.
- Para certas instâncias aplicar também grupos de segurança no ELB usando-o desta maneira de proxy. Assim você dobra a segurança, embora aumente a latência.
- A Amazon Web Services dispõe de um documento altamente recomendável onde reúne um conjunto de boas práticas para manter sua infraestrutura segura na AWS.
Share