Saiba mais sobre duas ferramentas que podem mudar significativamente os processos internos de segurança das empresas
As ferramentas de código aberto Caldera, criada pelo MITRE, e Infection Monkey, da GuardiCore, tem como finalidade avaliar a saúde da segurança de um ambiente de rede através de testes de invasão. Para quem não esteja ainda familiarizado com o termo, ao pesquisar sobre testes de invasão é comum deparar-se com o blue team e red team. Para que fique mais claro, destacamos duas definições: red team representa a equipa que faz o papel dos invasores, tentando explorar vulnerabilidades e aproveitar-se de falhas do ambiente, já o blue team é responsável pela monitorização e defesa do ambiente.
A ideia das soluções é fazer com que as avaliações automáticas do ambiente possam ser executadas sem que uma quantidade de recursos muito grande seja utilizada para tal, podendo trazer um aumento de segurança nos processos do dia a dia de abastecimento de servidores e estações de trabalho ou até avaliações periódicas de todo o ambiente.
Falemos agora um pouco sobre o que torna as ferramentas de avaliação distintas entre si.
Caldera
Desenvolvida para ser instalada em ambientes Linux/Unix, a Caldera necessita, no mínimo, do Python 3.5.3 instalado para poder funcionar. A sua instalação é feita em poucos passos e pode ser consultada diretamente no repositório do MITRE, na área referente à solução.
Após a implementação da solução toda a operação pode ser feita através da solução web.
Para que a Caldera possa realizar os testes de segurança em qualquer equipamento, primeiro o dispositivo precisa estar vinculado ao servidor de administração. Este vínculo permitirá que o equipamento seja manipulado da forma que o administrador necessitar.
A estrutura dos testes executados pela solução Caldera segue uma estrutura de execução. Primeiro é necessário ter todos os hosts que serão analisados vinculados à interface. De seguida cria-se um ou mais grupos com esses hosts, para que as regras possam ser aplicadas aos mesmos. É possível escolher quais as técnicas a executar nos hosts utilizando um dos conjuntos de técnicas pré-existentes ou criando um novo conjunto de técnicas e inserindo apenas o que for relevante para a análise.
Como qualquer ferramenta que se preze, no final dos testes é possível aceder aos resultados através da opção Show Results.
Analisando os resultados é possível identificar pontos que precisam de atenção no ambiente, como por exemplo, política de passwords, protocolos inseguros a veicular dados privados no ambiente, restrições de acesso, e tantos outros pontos de melhoria que podem ser obtidos através da análise dos resultados.
Infection Monkey
A Guardicore, criadora do Infection Monkey, desenvolveu a solução para ser utilizada de diversas formas, com uma imagem similar a uma appliance para ambientes virtuais, como o VMWare, Azure, Google Cloud entre outros, e um executável para instalação em servidores Windows previamente existentes.
O Infection Monkey é uma ferramenta desenvolvida com o intuito de analisar ambientes de Datacenter, mas pode ser usada em qualquer ambiente de rede, independentemente do tamanho. É composta por três módulos:
- Infection Monkey: um agente que se auto propaga e compromete os hosts da rede;
- Monkey Island: servidor de controlo que gere todos os Infection Monkeys;
- Monkey Business: cria Monkey Islands em diferentes redes, gerindo e orquestrando as ações dos Infection Monkeys em cada ilha.
Caso não seja necessário o uso de um Monkey Business numa estrutura, a instalação do servidor do Monkey Island pode começar os testes. Diferente da Caldera, onde todas as máquinas que são analisadas são previamente vinculadas à interface de administração, o Infection Monkey é totalmente recursivo, espalhando-se por toda a rede e marcando todas as máquinas que conseguiu ou não comprometer.
A solução também possui uma área dedicada à extração de relatórios, e é possível analisar os logs das ações dos Monkeys em tempo real.
Falar de duas ferramentas numa única publicação pode deixar a dúvida: qual das soluções utilizar?
A resposta varia de acordo com o resultado que se espera. Caso necessite fazer um teste num ambiente mais controlado, envolvendo apenas hosts específicos, a solução Caldera é a opção ideal.
Se for necessário percorrer todo ambiente de rede que direta ou indiretamente tenha acesso ao ponto de partida dos testes e não existirem restrições quanto aos hosts a constar do relatório, o Infection Monkey é a opção a escolher.
Porque são estas ferramentas realmente úteis?
Como as ferramentas simulam ser um hacker dentro da rede, caso exista alguma vulnerabilidade no ambiente é sempre melhor saber disso através de um relatório de uma solução desenvolvida para ajudar do que ter os servidores deveras comprometidos por algum criminoso e arcar com as consequências da negligência.
Para além disso, as ferramentas também podem ajudar nos seguintes pontos:
- Análise frequente do ambiente: é possível inserir uma avaliação completa ou parcial de todo o ambiente dentro dos processos cíclicos que as áreas responsáveis por segurança ou tecnologia já possuem. Será sempre necessário que alguém administre a solução, mas com os níveis de automatizações que incluem, o tempo dedicado será muito menor do que avaliar o ambiente individualmente;
- Avaliação de novos hosts: num ambiente de rede controlado, é recomendada a análise de segurança de hosts que irão integrar o ambiente, sejam estações de trabalho ou servidores. A tarefa do teste de intrusão é mais simples de ser executada do que dedicar o tempo de um profissional a fazê-lo manualmente*;
- Otimização do ambiente e melhor gestão de recursos: percorrer todo o ambiente pode identificar serviços que não são necessários, imagine um cenário onde as imagens dos hosts acrescentados, tanto estações quanto servidores, incluem a capacidade de partilha de arquivos sob o protocolo SMBv1 – responsável pelo Eternal Blue. A rede inteira fica vulnerável a esse exploit. Identificar este tipo de situações, para além de ser um incremento de segurança, permitirá que o ambiente trabalhe melhor, pois não precisará gerir os recursos de um serviço que não é utilizado;
- Inventário de hosts: dependendo de como os testes forem feitos, hosts desconhecidos ou “esquecidos” serão identificados e o devido tratamento que pode ser aplicado, seja a remoção dos mesmos da rede ou a inserção no inventário de ativos.
*Os resultados obtidos pelas soluções não substituem a análise do ambiente por umpentester, o resultado de uma ferramenta de análise, independente de qual seja a escolhida é limitado às configurações previstas. Umpentesterconsegue trabalhar de forma dinâmica, adaptando a sua atuação com cada item encontrado no ambiente, sem seguir padrões de testes específicos como as soluções fazem. Da mesma forma que é inviável para umpentestereliminar as possibilidades de invasão em todos os equipamentos de rede, da forma como as soluções conseguem executar. Todas as abordagens são válidas e devem ser escolhidas de acordo com o resultado desejado, lembrando que uma não exclui a outra.