githubEditar

Expressway

CTF HackTheBox - Easy

1. Escopo e objetivo

  • Máquina alvo: 10.10.11.87

  • DNS: expressway.htb

  • Objetivo: obter os dois arquivos de flag; user.txt (usuário) e root.txt (root)

  • Metodologia: Reconhecimento → Enumeração → Acesso inicial → Escalada de privilégio → Pós-exploração


2. Reconhecimento e enumeração

2.1 Porta TCP rápida

  • Resultado: somente 22/tcp (SSH) aberta.

  • Porquê esse scan? RustScan rapidamente detecta as portas TCP mais comuns e integra com nmap para detecção de versão (-sVC).

  • O que isso nos diz? Um serviço SSH está ativo, mas um único serviço TCP superficialmente indica pouco vetor direto além SSH; precisamos olhar para UDP ou serviços menos visíveis.

2.2 Scan UDP para portas comuns

  • Resultado: 500/udp aparece como aberta.

  • Porquê? Muitos pentesters ignoram UDP, mas protocolos críticos de infraestrutura (VPNs, IPsec) usam UDP (ex: porta 500 para IKE). Encontrar 500/udp sugere “há um endpoint VPN ou IPsec/IKE”.

  • O que fazer agora? Investigar o protocolo que roda na porta 500/udp — pesquisa rápida indica que IKE (Internet Key Exchange) teoricamente usa UDP 500. Pesquisas online confirmam: (Hacktricksarrow-up-right)

2.3 Pesquisa e decisão de ferramenta

  • Conclusão técnica: Se um endpoint IKEv1 suporta Aggressive Mode com PSK (pre-shared key), então é possível capturar um hash do PSK (transmitido sem encriptação no modo Aggressive) e quebrá-lo offline. (Information Security Stack Exchangearrow-up-right)

  • Ferramenta adequada: ike-scan (e psk-crack); documentação oficial do Kali lista exatamente isso. (Kali Linuxarrow-up-right)

  • Raciocínio: Porta 500/udp → suspeita IKE/IPsec → verificar se exposição vulnerável (Aggressive Mode + PSK) → usar ferramenta para extrair hash → quebrar.

2.4 Enumeração IKE agressivo

  • -A = Aggressive mode scan

  • --pskcrack=hash.txt = crack da pre-shared key no aggressive mode

  • Saída mostra: “Aggressive Mode Handshake returned HDR=…, SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK …) ID(Type=ID_USER_FQDN, Value=ike@expressway.htb) …” e salva o hash no arquivo.

  • Interpretação: O gateway responde usando PSK autenticação, indica modo Aggressive ativo. A ID devolvida corresponde ao formato user/service. A presença de hash indica que a configuração é vulnerável.

  • Raciocínio encadeado: Identificar que o serviço permite Aggressive Mode → extrair hash PSK → preparar para crack.


3. Cracking do PSK e acesso

3.1 Quebra de PSK

  • Usamos rockyou.txt como wordlist (comum em CTFs). Resultado encontrado: freakingrockstarontheroad.

  • Porquê usar wordlist? Porque PSK vulnerável muitas vezes é fraca/humana ou repetida. A fonte article confirma que modo agressivo permite “offline dictionary/brute-force” da PSK. (Raxisarrow-up-right)

  • Raciocínio: Hash foi extraído → agora quebramos offline → obtivemos PSK.

3.2 Login SSH com credencial derivada

  • A identidade usada no handshake “ike@expressway.htbenvelope” foi utilizada como username.

  • Conseguimos shell como ike. Em home: cat user.txt → flag user.

  • Porquê isso funciona? Em lab/CTF o autor mapeou uma identidade de VPN (IKE) para conta local de SSH, muito didático.

  • Raciocínio: PSK agora funciona como senha → entrar via SSH → obter acesso inicial.


4. Escalada de privilégios

Após acessar a maquina via ssh, rodamos o script de enumeração mais conhecido e usado em CTFs, em sua versão para linux: linpeas.sharrow-up-right.

4.1 Verificação ambiente

  • User ike no sistema Debian 6.16.7-1 x86_64. Kernel antigo.

  • Verificar uname -a, sudo -l, ver pacotes SUID, versões.

  • Motivo: Escalada local muitas vezes depende de vulnerabilidades no kernel, nos utilitários SUID (ex: sudo), nas permissões incorretas.

4.2 Vulnerabilidade descoberta: CVE-2025-32463

  • Script CVE-2025-32463.sh usado e executado com sucesso para obter root (Linkarrow-up-right).

  • Exploit traduzido: Explora sudo --chroot vulnerável para ganhar root.

  • Raciocínio: Ver ambiente vulnerável → pesquisar CVE correspondente → aplicar exploit.

4.3 Execução

  • Resultado: root conseguido.

  • Raciocínio final: Temos root → Flag owned!.


5. Lições aprendidas e boas práticas

5.1 Técnicas chave

  • Nunca ignore UDP ou portas “estranhas” — como 500/udp para IKE/IPsec.

  • Se encontrar IKEv1 com modo Aggressive + PSK, alta chance de comprometimento offline. Fontes mostram que essa falha é conhecida há anos. (Raxisarrow-up-right)

  • Use ike-scan + psk-crack como padrão para esse tipo de serviço.

  • Mapear identidades de VPN para contas SSH pode levar a acesso rápido.

  • Verificar escalada local: utilitários comuns (sudo, chroot) ainda têm falhas exploitáveis.

5.2 Mitigações para defender

  • Desabilitar modo Aggressive em IKE; usar Main Mode ou IKEv2 com certificados. (Very Lazy Techarrow-up-right)

  • Usar PSKs fortes, grande entropia, ou melhor ainda: certificados.

  • Restringir acesso à conta de VPN — não mapear diretamente para SSH ou shell.

  • Manter sistema e utilitários atualizados (patch sudo e kernel).

  • Monitorar logs para tentativas de IKE agressivo, hash extrações, e uso de sudo --chroot.

Atualizado