Para uma aula sobre segurança de TI, quero demonstrar a escalação de privilégios para os alunos. Para fazer isso, examinei a exploit/linux/local
lista no Metasploit Framework, encontrando (entre outros) a exploit/linux/local/sock_sendpage
partir de agosto de 2009.
Eu configurei uma VM com o Ubuntu Server 9.04 de 32 bits ( http://old-releases.ubuntu.com/releases/9.04/ubuntu-9.04-server-amd64.iso ) a partir de abril de 2009. uname -r
me fornece 2.6.28-11-generic
. De acordo com a descrição da exploração
Acredita-se que todas as versões do Linux 2.4 / 2.6 desde maio de 2001 sejam afetadas: 2.4.4 até 2.4.37.4 inclusive; 2.6.0 até 2.6.30.4 inclusive
Portanto, parece que o servidor Ubuntu que eu configurei deve ser adequado para demonstração. No entanto, não consegui fazê-lo funcionar.
Adicionei um usuário (regular) no servidor e o acesso SSH funciona. No Metasploit Framework, eu posso criar uma sessão SSH usando auxiliary/scanner/ssh/ssh_login
. No entanto, quando executo a exploração, recebo
[*] Writing exploit executable to /tmp/mlcpzP6t (4069 bytes)
[*] Exploit completed, but no session was created.
Não recebo mais informações, nem mesmo quando definido DEBUG_EXPLOIT
como verdadeiro. /tmp
é escrito, também de dentro da sessão SSH do Metasploit:
$ sessions -c "touch /tmp/test.txt"
[*] Running 'touch /tmp/test.txt' on shell session 1 ([redacted])
$ sessions -c "ls -l /tmp"
[*] Running 'ls -l /tmp' on shell session 1 ([redacted])
total 0
-rw-r--r-- 1 [redacted] [redacted] 0 2016-03-28 09:44 test.txt
Também tentei definir WriteableDir
o diretório inicial do usuário no servidor, mas sem nenhuma alteração. O que estou perdendo aqui? Esta versão do servidor Ubuntu (que eu deliberadamente não atualizei!) Não é vulnerável?