Mr Robot
Difficulty: Medium
Last updated
Difficulty: Medium
Last updated
Vamos começar a nossa enumeração com uma ferramenta diferente do nmap agora só para testarmos coisas novas. Vamos utilizar aqui o rustscan.
Vamos agora utilizar o nmap para tentar encontrar que serviço e versões estão rodando nessas portas.
Através do código-fonte podemos ver que está aplicação esta rodando com um Wordpress.
Vamos realizar um fuzzing para encontrar mais diretórios que possamos explorar.
Achamos diversos caminhos importantes para nossa exploração. Como páginas de login e robots.txt que possue caminhos que normalmente não devem ser indexados para página web.
Conseguimos a partir do robots.txt obter a primeira flag.
O outro arquivo que encontramos no robots.txt, parece ser uma wordlist para ser utilizada, talvez um futuro bruteforce.
Vamos baixar esse arquivo e vamos tratar o mesmo, retirando possÃveis linhas repetidas para que ele fique menor.
Aqui podemos ver a diferença de tamanho da lista padrão e da tratada sem linhas repetidas e ordenada.
Vamos tentar logar agora com a página de login que encontramos no fuzzing.
Sabemos que o Mr.Robot é uma série conhecida, podemos fazer um osint com alguns nomes conhecidos de personagens dessa série.
Vou utilizar o usuário elliot
, pois é o personagem principal da série.
Observe que o comportamento da aplicação, ele acaba falando que apenas a senha está errada. E com essa mensagem de erro, conseguimos enumerar usuários que realmente existem no sistema. Então, apenas precisamos agora descobrir a senha do usuário Elliot
Como temos uma wordlist, vamos executar um bruteforce nesse formulário com o usuário elliot e com a wordlist que encontramos em robots.txt
Vamos usar a ferramenta WpScan para realizar esse bruteforce
Agora se tentarmos logar, podemos entrar no painel do Wordpress.
Há diversas formas de se explorar um wordpress a partir da sua página de configuração. Uma delas é a utilização de um tema com payload de reverse shell. Vamos utilizar essa técnica.
Em apperance > editor
Vamos editar esse tema e colocar um payload bem conhecido de reverse shell em php, que é o Pentest Monkey.
Bom, usamos php aqui pq a tecnologia que esta rodando nesse wordpress é PHP.
Podemos usar o Wappalyzer para confirmar isso.
Vamos copiar e colar lá no editor do tema do wordpress. Mas antes mude para o template 404.php
, que esta na direita e após isso clique em Update File.
Confirmamos a atualização, agora podemos deixar um listening do netcat na porta 443, e abrir a páginal do tema wordpress, e iremos receber o nosso reverse shell.
Vamos deixar o shell mais interativo agora para que possamos navegar de uma forma mais confortável e não perder o shell caso faça um ctrl+c
.
Primeiro procuramos por versões do python no sistema:
Não podemos ler a segunda flag, pois somente o usuário robot pode ler e somos o usuário daemon
Mas temos o arquivo password.raw-md5
nessa mesma pasta do robot
e ele tem o que parece a senha desse usuário em md5.
Agora podemos tentar logar com o usuário robot.
E com isso conseguimos pegar a segunda flag.
Para pegar a última flag, precisamos escalar privilégio para o usuário root
Vamos procurar binários incomuns com permissão de suid.
Com isso, conseguimos escalar para usuário root
e conseguimos ler a ultima flag.
Lembre-se que assim que enumeramos a página web descobrimos o caminho para esse tema no codigo-fonte:
Vamos usar o site para poder tentar quebrar esse hash e descobrir a senha
Encontramos o nmap
usando o para vermos se já é conhecido escalar privilégio com esse binário.