Google dispõe de um scanner de vulnerabilidade de fontes abertas para redes empresariais de grande escala constituído por milhares ou mesmo milhões de sistemas ligados à Internet.
Tsunami, o scanner foi usado internamente no Google e foi disponibilizado no GitHub no mês passado.
Tsunami não será um produto oficial do Google, mas será mantido pela comunidade de código aberto, à semelhança de como o Google disponibilizou pela primeira vez Kubernetes (outra ferramenta interna do Google) para as massas.
Como funciona o Tsunami
Já existem centenas de outros scanners de vulnerabilidade comerciais ou de código aberto no mercado, mas o que é diferente no Tsunami é que o Google construiu o scanner com empresas de tamanho gigantesco como ele próprio em mente.
Isto inclui empresas que gerem redes que incluem centenas de milhares de servidores, estações de trabalho, equipamento de rede, e dispositivos IoT que estão ligados à Internet.
Google disse que concebeu o Tsunami para se adaptar a estas redes extremamente diversas e extremamente grandes no get-go, sem a necessidade de executar scanners diferentes para cada tipo de dispositivo.
Google disse que o fez dividindo primeiro o Tsunami em duas partes principais, e depois adicionando um mecanismo de plugin extensível no topo.
O primeiro componente do Tsunami é o scanner em si — ou o módulo de reconhecimento. Este componente efectua o scanner da rede de uma empresa em busca de portas abertas. Depois testa cada porta e tenta identificar os protocolos e serviços exactos em execução em cada uma delas, numa tentativa de evitar a rotulagem errada das portas e dispositivos de teste para as vulnerabilidades erradas.
Google disse que o módulo de impressões digitais das portas é baseado no motor de mapeamento de rede nmap testado pela indústria, mas também usa algum código personalizado.
O segundo componente é o mais complexo. Este é executado com base nos resultados do primeiro. Leva cada dispositivo e as suas portas expostas, selecciona uma lista de vulnerabilidades para testar, e executa explorações benignas para verificar se o dispositivo é vulnerável a ataques.
O módulo de verificação de vulnerabilidade também é como o Tsunami pode ser estendido através de plugins — os meios através dos quais as equipas de segurança podem adicionar novos vectores de ataque e vulnerabilidades para verificar dentro das suas redes.
A versão actual do Tsunami vem com plugins para verificar:
- UIs sensíveis expostas: Aplicações tais como Jenkins, Jupyter, e Hadoop Yarn com UIs que permitem a um utilizador agendar cargas de trabalho ou executar comandos do sistema. Se estes sistemas forem expostos à Internet sem autenticação, os atacantes podem aproveitar a funcionalidade da aplicação para executar comandos maliciosos.
- Credenciais fracas: O Tsunami usa outras ferramentas de código aberto tais como ncrack para detectar senhas fracas usadas por protocolos e ferramentas incluindo SSH, FTP, RDP, e MySQL.
Google disse que planeia melhorar o Tsunami através de novos plugins para detectar uma maior variedade de exploits nos próximos meses. Todos os plugins serão lançados através de um segundo repositório GitHub dedicado.
O projecto será focalizado em nenhum falso-positivo
O gigante da pesquisa disse que o avanço do Tsunami se concentrará no cumprimento dos objectivos de clientes empresariais de topo de gama como ele próprio, e as condições encontradas nestes tipos de redes grandes e multi-dispositivos.
A precisão da varredura será o objectivo principal, com o projecto focalizado em fornecer resultados com o mínimo possível de falsos-positivos (detecções incorrectas).
Isto será importante uma vez que o scanner estará a funcionar dentro de redes gigantes, onde mesmo os mais pequenos resultados falso-positivos podem resultar no envio de correcções incorrectas para centenas ou milhares de dispositivos, resultando possivelmente em falhas de dispositivos, falhas de rede. Inúmeras horas de trabalho desperdiçadas, e mesmo perdas para o resultado final de uma empresa.
Outras vezes, o Tsunami também será prolongado com apoio apenas para vulnerabilidades de alta severidade que são susceptíveis de serem armadas, em vez de se concentrar na varredura de tudo debaixo do sol, como a maioria dos scanners de vulnerabilidade tendem a fazer hoje em dia. Isto será feito para reduzir o cansaço de alerta das equipas de segurança.