🥒Pickle Rick
Olá, viajante! Neste artigo, trago um write-up do desafio Pickle Rick, da plataforma TryHackMe.
Reconhecimento
Ao realizar um portscan básico, encontrei as seguintes portas abertas:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.6 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Acessando a aplicação web, temos a seguinte página:

Analisando o código-fonte da página, pude encontrar um nome de usuário em um comentário.

Se temos um usuário, então provavelmente temos alguma página de login escondida nessa aplicação, ou esse usuário pode ser usado para acessar o serviço SSH.
Realizando uma enumeração de subdiretórios, encontrei alguns interessantes.

Analisando o conteúdo do arquivo robots.txt
, encontrei um conteúdo estranho, que faz referência ao conteúdo do desenho animado.

robots.txt

/assets
Nada interessante. Partindo para a página de login encontrada durante a enumeração de diretórios.

Com um nome de usuários e uma possível senha em mãos, posso tentar acessar a página acima.
Exploração
Temos um painel de comandos. Provavelmente conseguirei executar comandos diretamente no servidor.


ls
, encontrei o primeiro ingrediente do desafioAo tentar capturar o conteúdo do arquivo, obtive um bloqueio.

cat
é bloqueado, mas posso tentar outros comandosAtravés do comando less
, consegui obter o conteúdo do arquivo com sucesso.
Navegando um pouco mais no servidor, descobri que existem dois usuários com pasta /home
habilitada.


\
) antes do espaço, para escapar o caractere)Imagino que o último dos 3 ingredientes necessite de escalação de privilégios.
Escalação de Privilégio
Se tenho a possibilidade de executar comandos remotamente, posso tentar subir uma shell reversa.


Após o acesso, consegui uma shell full PTY (CTRL+Z
> stty raw -echo
> fg
> export TERM=xterm
).
Consegui encontrar um executável com permissões SUID, onde eu conseguiria escalar meu privilégio.

find / -user root -perm -4000 -exec ls -ldb {} ;
Podemos executar o comando sudo
. Tendo isso em vista, consigo listar os arquivos na pasta /root
com permissões elevadas.

Last updated