Web App Exploitation 101
Last updated
Last updated
Após adicionarmos os vhosts no arquivo /etc/hosts
acessamos o site, e não apresenta nenhum erro de disfiguração
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
Aqui nós vamos enumerar subdiretórios
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
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 file
em 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!
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 nc
binário existe:
Agora iniciamos um ouvinte nc em nossa máquina atacante e simplesmente incluímos um nc
shell reverso baseado como cmd
parâmetro. O código shell reverso que usamos é o seguinte:
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