Objetivo
O objetivo dessa máquina segundo o autor é explorar um servidor Ubuntu, então vamos lá
Enumeração
Usando o nmap para fazer um scan na máquina descobri somente duas portas abertas
A porta 22 rodando um OpenSSH 6.6.1p1 e a porta 80 rodando um Apache httpd 2.4.7
Na porta 80 está funcionando uma espécie de site pessoal do 0day
Vou continuar e enumerar alguns diretórios e arquivos no site
De primeira, o que me chamou a atenção foi o diretório /backup e, ao entrar para ver o conteúdo, encontrei uma private key do ssh
Copiei ela pra minha máquina e tentei me conectar via ssh ao servidor usando essa chave. Na primeira tentativa o ssh me pediu a passphrase, então usei o john para descobrir a passphrase correta
Sabendo a passphrase, tentei novamente me conectar ao servidor usando alguns possíveis nomes de usuário, porém em todos eles além da chave era necessário a senha do usuário. Como ainda não tenho a senha, resolvi mudar de ideia e tentar um outro caminho
Voltei a analisar as informações que tinha e foi ai que percebi o diretório /cgi-bin
Comecei a procurar por vulnerabilidades para explorar o cgi-bin e encontrei a CVE 2014-6278, que possui um exploit publico
Exploração
Baixei o exploit para minha máquina e executei conseguindo a shell no servidor
Essa shell está atrelada ao usuário www-data, que tem poucos privilégios, então o objetivo agora é conseguir elevar os privilégios até conseguir o root
Para isso, comecei a fazer um reconhecimento para pegar mais informações sobre o sistema
Como podemos ver, o sistema tem uma versão de kernel um pouco antiga e que possui vários exploits públicos, que podem ser usados para escalar privilégios
Escolhi um desses exploits e fiz o upload para a máquina alvo
Entretanto, ao tentar executar o exploit na máquina alvo, não obtive sucesso e recebi o seguinte erro: gcc: error trying to exec ‘cc1’: execvp: No such file or directory
Depois de algumas pesquisas descobri que esse erro estava ocorrendo porque a variável PATH não estava informando o caminho correto dos comandos que o exploit utilizava, então copiei o conteúdo da variável PATH da minha máquina para a máquina alvo (isso porque tanto o kali quanto o ubuntu são baseados no debian) e então executei nomavente o exploit
Dessa vez tudo funcionou corretamente, então agora já conseguimos executar comandos no sistema como root