Capturando e-mails da rede com Mailsnarf
Empresas que terceirizam o servidor de e-mail tem algumas dificuldades de implantarem um maior controle em relação ao e-mail. Com o Mailsnarf é possível ter uma cópia de todos os e-mails que são enviados ou recebidos e posteriormente baixá-los em seu gerenciador de e-mails.
[ Hits: 51.827 ]
Por: Edson Marco Ferrari Junior em 14/02/2007 | Blog: http://www.edmafer.com.br
these programs require: Berkeley DB - http://www.sleepycat.com/ OpenSSL - http://www.openssl.org/ libpcap - http://www.tcpdump.org/ libnids - http://www.packetfactory.net/Projects/Libnids/ libnet - http://www.packetfactory.net/Projects/Libnet/Baixe-as e instale-as. Usuários Debian contam com a facilidade:
static void print_mbox_msg(char *from, char *msg) { char *p; time_t t; t = time(NULL); if (from == NULL) from = "mailsnarf"; printf("From %s %s", from, ctime(&t)); while ((p = strsep(&msg, "\n")) != NULL) { if (strncmp(p, "From ", 5) == 0) putchar('>'); for (; *p != '\r' && *p != '{TEXT0}'; p++) putchar(*p); putchar('\n'); } putchar('\n'); fflush(stdout); }
static void print_mbox_msg(char *from, char *msg) { /* * Foi declarada uma variável global * de nome cont. * int cont = 0; */ char *p; time_t t; FILE *fl; //ponteiro para o arquivo /* * Neste ponteiro char, armazenaremos o * diretório onde iremos salvar nossos * arquivos. */ char *dir = "/home/edmafer/Maildir/new/"; /* * path será a concatenação do diretório * com o nome do arquivo. */ char path[30]; t = time(NULL); //Pegando a data e hora de agora /* * Estamos concatenando em path, o diretorio * o nome do arquivo, e a extensão eml * e incrementa 1 em cont */ sprintf(path,"%s%d.%s",dir,cont++,"eml"); fl = fopen(path,"w"); //Abrindo o arquivo para escrita if (!fl) { //Verificando se houve erro ao abrir printf("\n<!>Erro ao tentar criar arquivo<!>\n"); return; } if (from == NULL) //Definindo o from from = "mailsnarf"; fprintf(fl,"From %s %s", from, ctime(&t)); //Direcionando para o arquivo com data while ((p = strsep(&msg, "\n")) != NULL) { //Todas as saidas para o arquivo if (strncmp(p, "From ", 5) == 0) putc('>',fl); for (; *p != '\r' && *p != '{TEXT0}'; p++) putc(*p,fl); putc('\n',fl); } putc('\n',fl); fflush(stdout); //Limpando buffer de tela (pra que? Não sai mais nada lá) fclose(fl); //Fechando o arquivo }
Escondendo banners de serviços
A mitologia da imunidade a vírus no Linux
OSSEC HIDS - Instalação e configuração no CentOS 6.5
Bloqueio de Países com IPTables
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
E a guerra contra bots continua
Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário
Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).
Instalando o FreeOffice no LMDE 6
Anki: Remover Tags de Estilo HTML de Todas as Cartas
Colocando uma opção de redimensionamento de imagem no menu de contexto do KDE
Debian Bookworm para a versão beta Debian 13 Trixie (1)
material de assembly x64 [RESOLVIDO] (5)
Terminal não funciona [RESOLVIDO] (9)
Problema com alias usando locate (6)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (20)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba