Tomghost
Olá, viajante! Neste artigo, trago um write-up do desafio Startup, da plataforma TryHackMe.
Last updated
Olá, viajante! Neste artigo, trago um write-up do desafio Startup, da plataforma TryHackMe.
Last updated
Temos uma máquina rodando um AJP (Apache Jserv Protocol). O AJP é um protocolo binário que pode fazer proxy de solicitações de entrada de um servidor da Web para um servidor de aplicativos que fica atrás do servidor da Web. Versões abaixo da 7.0.100 estão suscetíveis à (Ghostcat). Consideremos essa máquina uma PoC da CVE em questão.
Inicialmente, realizamos uma varredura de portas no alvo.
Através da varredura realizada, podemos identificar a porta 8009 (porta padrão do serviço Apache Jserv) aberta. Apenas a identificação dessa porta unida ao contexto do alvo, podemos deduzir que conseguimos explorar essa brecha.
Acabamos de obter um usuário e senha através da exploração inicial. Podemos tentar acessar o alvo via SSH usando as credenciais encontradas.
Temos acesso. Navegando pelo sistema de arquivos do alvo, encontrei um outro usuário através da pasta /home
e, consequentemente, a primeira flag (user.txt).
Levando em consideração que não há muitos privilégios disponíveis ao usuário que encontramos inicialmente, precisamos encontrar uma forma de lateralizar nosso acesso para o outro usuário encontrado.
Dentro do diretório do usuário skyfuck
, existem dois arquivos interessantes.
Tratam-se, respectivamente, de um arquivo de credenciais e uma chave privada. Nesse caso, podemos gerar uma hash do arquivo tryhackme.asc
via GPG2John e depois quebrá-la utilizando o próprio John.
Com a senha do arquivo em mãos, podemos descriptografar o arquivo credential.pgp
que encontramos no início.
Agora, conseguimos nos movimentar lateralmente para o usuário merlin
.
Agora, com um novo usuário em mãos, podemos tentar escalar nosso privilégios a root.
Executando alguns dos passos que executei inicialmente para consultar permissões no usuário skyfuck
, consegui encontrar uma aplicação que posso executar como root.
Após obter acesso máximo ao sistema, entrei no diretório /root
e obti a flag root.txt
. :)
A base nos mostra um um publicado para o serviço que encontramos. Ou seja, já temos uma "receita de bolo" para apenas executar e obter acesso ao alvo.
De acordo com o , podemos escalar privilégios a root utilizando a aplicação zip
com os seguintes comandos:
tryhackme.asc
credential.pgp
zip
com permissões elevadaszip