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: 52.320 ]
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 }
Autenticação por desafio e resposta no SSH
Mudança de hábito: autenticando usuários em base de dados MySQL
Monitorando máquinas Windows com o Nagios
Hardening, se adequando as normas ISO 27000
Chkrootkit - Como determinar se o sistema está infectado com rootkit
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (1)
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta