Diário de um Pentester 4 - IBLISS Digital Security
Durante a condução de um pentest blackbox [quando não há qualquer informação sobre o alvo, como tecnologias implementadas, credenciais ou formas de acesso] nos deparamos com uma tela de login em um aplicativo mobile em que consistia no preenchimento de 3 campos [Código da Empresa, Usuário e Senha], conforme podemos observar na imagem abaixo:
Imagem 01 – Tela inicial da aplicação.
Primeiramente, o que é OSINT [Inteligência de Fontes Abertas]?
OSINT (sigla para Open Source Intelligence ou Inteligência de Fontes Abertas) é o termo usado, principalmente em inglês, para descrever a inteligência, no sentido de informações, como em serviço de inteligência, obtida através dados disponíveis para o público em geral, como jornais, revistas científicas, redes sociais, plataformas de vídeo etc. É o conhecimento produzido através de dados e informações disponíveis e acessíveis a qualquer pessoa.
É um modelo de inteligência que visa encontrar, selecionar e adquirir informações de fontes públicas e analisá-las para que junto com outras fontes possam produzir um conhecimento. Na comunidade de inteligência (IC), o termo "aberto" refere-se a fontes disponíveis publicamente.
Após essa identificação, iniciamos os testes na busca por encontrar, de alguma forma, sem a utilização de Engenharia Social ou campanhas de Phishing, formas de obter acesso a aplicação de forma legítima.
Dessa forma, iniciamos utilizando "Google Hacking", que é uma técnica utilizada para otimizar as buscas do Google, utilizando seus recursos a fim de obter de forma mais profunda termos de indexação ou até mesmo levantar informações sigilosas sobre empresas e pessoas.
Por vezes utilizamos essa técnica de forma padrão, ou seja, observamos apenas resultados que são trazidos na guia "Todas" dos mecanismos de busca, como exemplificado na imagem 02 abaixo:
Imagem 02 – Exemplo de dork.
Podemos observar que há outros filtros na busca por otimizar as pesquisas pelo alvo que estamos buscando, como imagens, notícias, vídeos, etc.
A dork "site" utilizada no exemplo acima e também no projeto realiza uma busca direta dentro de um domínio e dessa forma a busca fica mais assertiva e direcionada ao alvo em específico.
Por se tratar de um teste realizado no formato blackbox e com as limitações mencionadas acima, passamos então a considerar os filtros nos resultados obtidos nas dorks como imagens e vídeos.
Ao navegar pelos resultados, fomos surpreendidos com um vídeo em uma plataforma pouco usual para o nosso time chamada "vimeo.com.br" em que havia um vídeo explicativo de como utilizar a plataforma e não apenas isso, mas também informações relevantes sobre como funciona o login na aplicação, já que não era possível criar um usuário na plataforma, sendo necessário, para tanto, um contato com a empresa em questão e alguns passos burocráticos para obter esse acesso, como a contratação do serviço em si.
Sendo assim, analisamos o conteúdo do vídeo e verificamos que havia uma empresa de "exemplo" para realização do login e também como era realizado o cadastro dos usuários dentro da plataforma, conforme observado na imagem 03 abaixo:
Imagem 03 – Forma de login na aplicação.
Com isso, podemos observar qual era o formato de cadastro da empresa na plataforma, com dígitos numéricos no início, parte do nome da empresa no meio e mais 4 dígitos numéricos no final, conforme o exemplo abaixo:
000empresa1111
Após essas validações, realizamos um ataque de força bruta na aplicação e obtivemos sucesso com acesso total a aplicação, inclusive com acesso a usuários administrativos.
Com tudo isso, podemos concluir que a realização de um bom processo de OSINT [Inteligência de Fontes Abertas] na realização de um pentest podem fazer toda a diferença, pois muitas informações estão dispostas na internet sem qualquer tipo de sanitização e dessa forma é possível que um ator malicioso possa, através dessas informações, obter acesso a dados sigilosos ou até mesmo acesso a uma aplicação com privilégios administrativos, como o que foi mostrado nesse post.
Salientamos então que é de extrema importância que as empresas verifiquem, quando do lançamento de algum manual, seja ele em texto ou vídeo, para que não contenham dados sensíveis, credenciais verdadeiras e as formas de cadastros em determinada aplicação com dados verdadeiros, uma vez que, após publicado esse material, ele poderá cair em mãos erradas e com isso comprometer todo ambiente corporativo, causando prejuízos financeiros, de imagem entre outros.
Aos analistas de segurança, considerem todos os mecanismos de buscas e filtros disponíveis nos mesmos, pois onde menos imaginamos podemos encontrar informações relevantes e sensíveis e estaremos um passo à frente por uma sociedade mais segura.