Recentemente finalizei o laboratório Pickle Rick na plataforma TryHackMe. O objetivo era comprometer um servidor web e encontrar 3 ingredientes secretos escondidos no sistema.

Este desafio envolve conceitos importantes de reconhecimento, enumeração web, command injection, reverse shell e privilege escalation.

🔎 Reconhecimento inicial

Comecei analisando o código-fonte da página e encontrei um comentário interessante:

<!--Note to self, remember username! Username: R1ckRul3s-->

Já tínhamos então um possível usuário:

Username: R1ckRul3s

Em seguida executei um scan com Nmap:

nmap -sV -sC 10.66.176.92

Resultado:

22/tcp open  ssh
80/tcp open  http  Apache 2.4.41

Isso indicava que o servidor rodava um Apache Web Server em um ambiente Linux.

🌐 Enumeração Web

Utilizei Gobuster para descobrir diretórios ocultos:

gobuster dir -u http://10.66.176.92/ \
-w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

Foi encontrado o diretório:

/assets

Explorando mais o site, encontrei também:

robots.txt

Baixando o arquivo:

curl -O http://10.66.176.92/robots.txt

Conteúdo:

Wubbalubbadubdub

Isso parecia ser uma senha potencial.

🔐 Descobrindo a página de login

Executei novamente o Gobuster, agora procurando por extensões comuns:

gobuster dir -u http://10.66.176.92 \
-w wordlist.txt -x txt,php,html

Resultado:

login.php

Com as credenciais encontradas:

Username: R1ckRul3s
Password: Wubbalubbadubdub

Consegui acessar o painel.

⚠️ Command Injection

Dentro do painel havia um campo para execução de comandos.

Testei um comando simples:

ls

Resultado:

Sup3rS3cretPickl3Ingred.txt
assets
clue.txt
portal.php

Lendo o arquivo:

mr. meeseek hair

Primeiro ingrediente encontrado

Outro arquivo (clue.txt) indicava:

Look around the file system for the other ingredient.

🖥️ Reverse Shell

Para explorar melhor o sistema, utilizei um reverse shell. Após alguns testes com Bash e Python, apenas o payload em Perl funcionou (utilizando referências da Reverse Shell Cheat Sheet).

Isso me deu acesso ao servidor como:

www-data

🔎 Enumeração do sistema

Explorando o sistema de arquivos encontrei o segundo ingrediente no diretório /home:

1 jerry tear

🚀 Privilege Escalation

Para verificar permissões executei:

sudo -l

Resultado:

User www-data may run the following commands:
(ALL) NOPASSWD: ALL

Isso significa que o usuário podia executar qualquer comando como root sem senha.

Então executei:

sudo su

Agora com privilégios administrativos.

🧪 Ingrediente final

No diretório root:

cd /root
ls

Encontrei:

3rd.txt

Conteúdo:

fleeb juice

Terceiro ingrediente encontrado

🧠 Conceitos praticados neste laboratório

  • Reconhecimento com Nmap • Enumeração web com Gobuster • Análise de código-fonte • Command Injection • Reverse Shell • Enumeração de sistema Linux • Privilege Escalation com sudo

Laboratórios como esse são excelentes para treinar o fluxo completo de um teste de intrusão em aplicações web.

Continuando a jornada em Cybersecurity e Pentesting. 🚀