2H4CK
  • 🎯2H4CK
  • 📰Artigos
    • ☁️Cloud
      • 🌩️Encontrando e explorando buckets expostos
    • 🔐Security
      • Let's talk about Wazuh
    • 🌐Web
      • 🌐Como funciona uma aplicação web
      • 💸Comportamento prático de um Stealer
      • 💉Detectando e analisando SQL Injection
      • 🐝OWASP
    • 🪟Windows
      • 🧑‍💻Explorando Kerberos
    • 📡Wireless
      • 🔑Dissecando e atacando o WPA com o Aircrack
  • 🚩Capture the Flag
    • 🟩Hack the Box
      • 🖼️Photobomb
    • ☁️TryHackMe
      • 🪟Attacktive Directory
      • 🕵️Basic Pentesting
      • 🥒Pickle Rick
      • 🌶️Startup
      • 🙀Tomghost
      • 👨‍🚀Vulnversity
  • 📚Hacking Guide
    • 🔥Entendendo e tratando incidentes de segurança
    • 🔢Fases Macro de um Ataque
    • 🕵️Introdução ao Threat Hunting
Powered by GitBook
On this page
  • Reconhecimento
  • Exploração
  • Escalação de Privilégio
  1. Capture the Flag
  2. TryHackMe

Pickle Rick

Olá, viajante! Neste artigo, trago um write-up do desafio Pickle Rick, da plataforma TryHackMe.

PreviousBasic PentestingNextStartup

Last updated 2 years ago

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.

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.

Ao tentar capturar o conteúdo do arquivo, obtive um bloqueio.

Atravé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.

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.

Podemos executar o comando sudo. Tendo isso em vista, consigo listar os arquivos na pasta /root com permissões elevadas.

🚩
☁️
🥒
Página inicial
Código-fonte da página contendo um nome de usuário em um comentário
Diretórios encontrados durante a varredura
Conteúdo do arquivo robots.txt
Conteúdo (Index of) do diretório /assets
Página de login
Execução de comandos no servidor interno
Com o comando ls, encontrei o primeiro ingrediente do desafio
O comando cat é bloqueado, mas posso tentar outros comandos
Captura dos dois diretórios de usuários encontrados
Encontrei o segundo ingrediente navegando pelas pastas do servidor. (Julguei importante lembrar da contrabarra (\) antes do espaço, para escapar o caractere)
Comando de shell reversa
Shell reversa obtida via RCE
find / -user root -perm -4000 -exec ls -ldb {} ;
Captura do último ingrediente