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
  • Movimentação Lateral
  • Escalação de Privilégio
  1. Capture the Flag
  2. TryHackMe

Startup

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

PreviousPickle RickNextTomghost

Last updated 2 years ago

Reconhecimento

Ao realizar um portscan básico, encontrei as seguintes portas abertas:

PORT   STATE SERVICE
21/tcp open  ftp
22/tcp open  ssh
80/tcp open  http

Analisando a aplicação web, não encontrei nada relevante.

Olhando o código-fonte, também não encontrei nada muito interessante.

Enquanto a enumeração de subdiretórios com o gobuster ainda não foi concluída, analisei o serviço FTP e notei que o servidor permite login anônimo.

Realizei o download dos arquivos acima e notei que a imagem important.jpg, na verdade, não é tão importante assim.

Porém, no arquivo notice.txt, temos um possível nome de usuário.

#Whoever is leaving these damn Among Us memes in this share, it IS NOT FUNNY. People downloading documents from our website will think we are a joke! Now I dont know who it is, but Maya is looking pretty sus.

Retomando a enumeração de diretórios, encontrei o diretório /files.

Exploração

Tenho acesso ao serviço FTP e a um diretório de arquivos... Posso tentar subir uma shell reversa através do serviço FTP.

Tentarei obter uma shell full TTY através do Python.

python3 -c 'import pty;pty.spawn("/bin/bash")'
CTRL + Z
stty raw -echo
fg
export TERM=xterm

Agora posso checar por arquivos e, ao realizar tal procedimento, encontrei a primeira flag.

Analisando os arquivos em maior profundidade, encontrei uma pasta chamada incidents e, dentro dela, um arquivo de extensão .pcapng.

Realizando a cópia do arquivo para a minha máquina via scp e analisando o arquivo com o Wireshark, encontrei um pacote que continha uma possível (e aparente) senha.

Movimentação Lateral

Analisando a pasta /home para verificar a existência de outros usuários, encontrei outro usuário. Agora com um nome de usuário genuíno e uma possível senha, posso tentar realizar uma movimentação lateral.

Escalação de Privilégio

Analisando a pasta scripts, encontrei um script em shell chamado planner.sh, pertencente ao usuário root mas com permissão de execução para qualquer usuário.

O script acima basicamente envia o conteúdo da variável LIST para dentro do arquivo /scripts/startup_list.txt e, após o envio, executa o script /etc/print.sh, ao qual investigarei agora.

Checando o conteúdo do script, trata-se apenas de uma chamada de shell e a exibição de uma mensagem de conclusão.

#!/bin/bash
echo "Done!"

Checando executáveis com permissão SUID, encontrei o executável crontab. Apontarei o script planner.sh no crontab do usuário que acessei para tentar obter uma shell reversa com permissões elevadas.

🚩
☁️
🌶️
Página inicial
Código-fonte da página inicial
Captura de banner do serviço de FTP
Diretório encontrado durante a enumeração
Success!
Shell full TTY obtida
Captura da primeira flag
Arquivo interessante encontrado
Captura do pacote contendo uma possível senha
Captura da segunda flag
Scripts pertencentes ao usuário root e suas permissões
Conteúdo do script planner.sh
Dono do script /etc/print.sh é o usuário que estou utilizando no momento. Good news
Configuração do crontab para o script planner.sh
Escalação de privilégio via crontab
Captura da última flag
😄