🏆Vulnversity Writeup
Last updated
Last updated
-- documentações ainda em revisão -- faltando partes - video ja gravado
Não vou conseguir lembrar a data certinha da primeira vez que fiz, mas estou recomeçando no tryhackme e este é o writeup q eu gostaria de trazer primeiro.
--Vou pular as primeiras tasks que são sobre estar conectado a VPN, ter um sistema com NMAP instalado, estar conectado na máquina do desafio e também pularemos as perguntas que não precisam de resposta.
O nmap é uma ferramenta gratuita, de código aberto e poderosa usada para descobrir hosts e serviços em uma rede de computadores. Utilizamos o nmap para escanear esta máquina para identificar todos os serviços que estão sendo executados em uma porta específica, mas podemos fazer o uso do programa de algumas formas, como:
Podemos utilizar o HELP do shell para saber mais parâmetros e até ajudar a responder algumas questões.
Algumas coisas que gostaria de add aqui para utilizarmos, poderia ser o seguinte:
Usar o mais comum em TODAS as portas / entre as portas especificadas (NO EXEMPLO SÃO TODAS POR TERMOS POSTO AS 65535 PORTAS)
Podemos utilizar uma forma de agilizar os pacotes com o -T4 (cuidado ao usar o -T5 por ter risco de se derrubar).
Podemos, também utilizar uma força maior no 'verbose' para mostrar tudo na tela de forma mais detalhada o q está acontecendo, nesse caso podemos por -vv
Eu fiz o exercício com o comando:
A saída sairia - resumidamente e objetivamente - mais ou menos como no exemplo abaixo;
Podemos ver que temos 6 portas abertas detectadas, o que responde a questão. Resposta>
No nmap -sV -Pn 10.10.84.129
mostrado acima, ele não apenas mostra na saída qual a porta e seu estado (aberto), mas também mostra o serviço e qual a versão do mesmo.
Logo, a resposta fica clara na saída deste comando também:
Squid http proxy **3.5.12**
Resposta>
De acordo com o que foi explicado anteriormente, daria para responder numa boa, né? haha.
Resposta>
Usando a flag -n no nmap, ele não resolverá os nomes de domínio DNS. Isso significa que o nmap não tentará converter endereços IP em nomes de host. Isso pode ser útil para acelerar as varreduras. Podemos achar essa resposta se usarmos o HELP
para ver o que cada parâmetro/flag faz.
Resposta>
Ainda usando a mesma saída de nmap -sV -Pn 10.10.84.129
podemos ver que estamos falando do Ubuntu, com web server na porta 3333, ou seja, temos um site em http://10.10.84.129:3333
.
Salvo engano, temos como detectar com o parãmetro -A
Respostas>
GoBuster - DirBruteforce
GoBuster é uma ferramenta usada para forçar bruscamente URIs (diretórios e arquivos), subdomínios DNS e nomes de host virtual. Para esta máquina, vamos nos concentrar em usá-lo para forçar bruscamente os diretórios. Eu geralmente uso outras ferramentas, como o dirb
ou dirsearch
, mas esse é bem legal também.
Qualquer coisa só rodar o sudo apt-get install gobuster
Se também tiver no Kali Linux
, tu vai achar umas wordlists em /usr/share/wordlists
.
Vamos utilizar para encontrar um diretório que pode ser usado para fazer o upload de um shell.
Utilizei com uma wordlist baixada que se encontra no mesmo diretório.
Você pode pesquisar pela wordlist 'directory-list-2.3-medium.txt' que resolverá o desafio.
Parâmetros do GoBuster;
Com o comando e uma saída mais ou menos como:
podemos perceber que desses diretórios, o único que parece ter algo é o 'internal', então se abrirmos a página http://10.10.84.129:3333/internal/
iremos perceber que nela temos uma página de upload.
Resposta>
Comprometer o webserver - Exploração da falha
Nmap flag | City |
---|---|
GoBuster Flag | Description |
---|---|
-sV
Attempts to determine the version of the services running
-p<x> or -p-
Port scan for port <x> or scan all ports
Pn
Disable host discovery and just scan for open ports
-A
Enables OS and version detection, executes in-build scripts for further enumeration.
-sC
Scan with the default nmap scripts
-v
Verbose mode
-sU
UDP port scan
-sS
TCP SYN port scan
-e
Print the full URLs in your console
-u
The target URL
-w
Path to your wordlist
E.g: /usr/share/wordlists/dirbuster/
-U and -P
Username and Password for Basic Auth
-p <x>
Proxy to use for requests
-c <http cookies>
Specify a cookie for simulating your auth