Vulnversity
Olá, viajante! Neste artigo, trago um write-up do desafio Vulnversity.
Last updated
Olá, viajante! Neste artigo, trago um write-up do desafio Vulnversity.
Last updated
Ao realizar um portscan básico, encontrei as seguintes portas abertas:
Acessando a porta 3333 (Serviço Web), me deparei com a aplicação Vulnversity.
Analisei o código-fonte da página e não encontrei nada muito relevante. Partindo para a enumeração de diretórios, encontrei um diretório interessante.
Acessando o diretório encontrado, notei uma função de upload de arquivos.
Eu poderia tentar subir uma shell reversa em PHP, levando em consideração que o site utiliza tal tecnologia...
O servidor não permite upload de arquivos com extensão .php
... Posso tentar algumas outras alternativas, como .php2
, .php3
, .php4
, .php5
ou .phtml
.
Agora só preciso acessar o arquivo que fiz o upload.
Provavelmente o arquivo não está armazenado na mesma pasta... Então decidi realizar uma varredura de diretórios dentro da página encontrada inicialmente.
Subindo uma shell full PTY através do Python.
Agora que possuo acesso ao servidor, procurei a flag user.txt
.
Para tentar escalar privilégios, verifiquei a existência de executáveis com permissão SUID.
Com isso, criei um payload na pasta /tmp
que simula um serviço, cujo qual chama uma shell.
.phtml
CTRL+Z
> stty raw -echo
> fg
> export TERM=xterm
user.txt
systemctl
pode ser executado com permissões SUIDsystemctl
root.txt