Meow Machine

Machine Name: Meow

Address: https://app.hackthebox.com/starting-point

Introdução

Ao iniciar um teste de penetração ou qualquer avaliação de segurança em um alvo, a etapa inicial é chamada de Enumeração. Essa fase envolve registrar o estado atual do alvo para obter o máximo de informações possível sobre ele.

Como você está conectado à mesma Rede Privada Virtual (VPN) que o alvo, pode acessá-lo diretamente como qualquer outro usuário faria. Se o alvo for um servidor web que hospeda uma página pública, basta acessar o endereço IP para ver o conteúdo disponível. Caso seja um servidor de armazenamento, você pode usar o mesmo IP para explorar os arquivos e pastas nele armazenados, desde que tenha as credenciais necessárias. A questão é: como encontrar esses serviços? Procurá-los manualmente seria muito demorado.

Todo servidor utiliza portas para enviar dados a outros clientes. Os primeiros passos na fase de Enumeração incluem escanear essas portas abertas para identificar a função do alvo na rede e as possíveis vulnerabilidades associadas aos serviços em execução. Para realizar uma varredura de portas de forma rápida, podemos usar uma ferramenta chamada nmap, que será explicada com mais detalhes no capítulo de Enumeração deste documento.

Após identificar as portas abertas no alvo, podemos acessá-las manualmente utilizando diferentes ferramentas para verificar se é possível explorar seu conteúdo. Cada serviço requer ferramentas ou scripts específicos para serem acessados. Para um iniciante em testes de penetração, essas ferramentas e técnicas só serão compreendidas com o tempo, prática e uma boa dose de pesquisa na internet. Cerca de 90% do trabalho em pentest consiste em buscar informações online sobre o produto que está sendo testado. Como o ecossistema tecnológico está em constante evolução, é impossível saber tudo sobre tudo. O mais importante é saber como encontrar as informações necessárias. A habilidade de realizar pesquisas de forma eficiente é essencial para se adaptar e evoluir continuamente.

O objetivo aqui não é rapidez, mas sim atenção aos detalhes. Se um recurso do alvo for ignorado durante a fase de Enumeração do teste, você pode perder um vetor de ataque crucial que poderia reduzir pela metade, ou até mais, o tempo de trabalho no alvo.

Enumeração

Após estabelecer com sucesso nossa conexão VPN, podemos usar o comando ping no endereço IP do alvo para verificar se nossos pacotes estão chegando ao destino. O endereço IP do alvo pode ser obtido na página do laboratório Starting Point e colado no terminal após digitar o comando ping, conforme mostrado no exemplo abaixo.

Após receber quatro respostas bem-sucedidas do alvo, podemos confirmar que nossa conexão foi estabelecida e estável. Para cancelar o comando ping, pressione a combinação CTRL+C no teclado, que será exibida no terminal como ^C. Isso devolverá o controle do terminal, permitindo que avancemos para a próxima etapa: escanear todas as portas abertas do alvo para identificar os serviços em execução.

Para iniciar o processo de varredura, usamos o seguinte comando com o script do nmap. O nmap (Network Mapper) envia solicitações para as portas do alvo e verifica se há respostas, determinando assim se estão abertas ou não. Algumas portas são usadas por serviços padrão, enquanto outras podem ser não convencionais. Por isso, utilizamos a flag de detecção de serviços -sV, que identifica o nome e a descrição dos serviços detectados.

O texto entre chaves e em verde ({ }) deve ser substituído pelas suas próprias informações. Neste caso, substitua {target_IP} pelo endereço IP do seu alvo.

Após a conclusão da varredura, identificamos que a porta 23/tcp está aberta e executando o serviço telnet. Uma pesquisa rápida no Google revela que o telnet é um serviço antigo usado para gerenciamento remoto de outros hosts na rede. Como o alvo está executando esse serviço, ele pode receber solicitações de conexão telnet de outros hosts na rede (como o nosso).

Normalmente, as conexões via telnet são configuradas com combinações de nome de usuário e senha para maior segurança. Podemos confirmar que esse é o caso do nosso alvo, já que somos recebidos por um banner do Hack The Box e uma solicitação de autenticação antes de prosseguir com o gerenciamento remoto do host alvo.

Precisamos encontrar credenciais válidas para continuar, já que não há outras portas abertas no alvo que possamos explorar.

Foothold

Às vezes, devido a erros de configuração, algumas contas importantes podem ser deixadas sem senha para facilitar o acesso. Isso representa um problema grave em alguns dispositivos de rede ou hosts, deixando-os vulneráveis a ataques de força bruta simples, nos quais o invasor tenta realizar login de forma sequencial, utilizando uma lista de nomes de usuário sem fornecer uma senha.

Algumas contas importantes comuns possuem nomes autoexplicativos, como:

. admin
. administrator
. root

Uma maneira é tentar realizar o login com essas credenciais, na esperança de que uma delas exista e tenha a senha em branco, e inseri-las manualmente no terminal quando o host solicitar. Se a lista fosse maior, poderíamos usar um script para automatizar esse processo, alimentando-o com uma lista de palavras para nomes de usuário e outra para senhas.

Normalmente, as listas de palavras usadas para essa tarefa consistem em nomes comuns, abreviações ou dados de vazamentos anteriores de bancos de dados. Por enquanto, podemos tentar manualmente os três principais nomes de usuário mencionados acima.

Sucesso! Conseguimos fazer login no sistema alvo. Agora podemos explorar o diretório em que caímos utilizando o comando ls. Há a possibilidade de encontrarmos o que estamos procurando.

O arquivo flag.txt é nosso objetivo neste caso. A maioria dos alvos do Hack The Box terá um desses arquivos, que conterá um valor hash chamado flag. A convenção de nomenclatura desses arquivos varia de laboratório para laboratório.

Question 01: What does the acronym VM stand for?

Virtual Machine

Question 02: What tool do we use to interact with the operating system in order to issue commands via the command line, such as the one to start our VPN connection? It’s also known as a console or shell.

Terminal

Question 03: What service do we use to form our VPN connection into HTB labs?

openvpn

Question 04: What tool do we use to test our connection to the target with an ICMP echo request?

ping

Question 05: What is the name of the most common tool for finding open ports on a target?

nmap

Question 06: What service do we identify on port 23/tcp during our scans?
telnet

Question 07: Submit the flag

Vamos executar o nmap para ver quais portas estão abertas no servidor

nmap -sV -T5 -p- 10.129.183.94 –stats-every=5s

  • –stats-every (especifica um intervalo para exibir as estatísticas sobre o progresso do scan)
  • -sV (habilita a versão do sistema)
  • -T5 (atribui o tempo 5 para o templete, que é a opção mais rápida)
  • -p- (solicita que o Nmap scaneie todas as 65.535 portas)

Ocasionalmente, erros de configuração podem resultar na atribuição de senhas vazias a contas críticas para facilitar o acesso. Isso representa um risco sério, especialmente em determinados dispositivos de rede ou hosts, pois os expõe a ataques de força bruta simples. Nesses cenários, um atacante pode tentar sistematicamente fazer login usando uma lista de nomes de usuários enquanto deixa o campo de senha em branco.

Devem ser testados alguns nomes comuns de contas ou funções, como:

  • admin
  • administrator
  • root
  • guest
  • superuser
  • support
  • system
  • service
  • webmaster

Assim que você conseguir fazer login, realize uma busca na pasta utilizando o comando ls:


Para ver o conteúdo do arquivo flag.txt, use o seguinte comando cat flag.txt:


b40abdfe23665f766f9c61ecba8a4c19

Rolar para cima