terça-feira, 19 de janeiro de 2016

Como Trolls e Spammers podem programar E-mail Bombs em 15 minutos com Python



Neste artigo irei demonstrar o funcionamento de uma técnica spammer, utilizada para envio continuo de mensagens de e-mail para terceiros, afim de lotar inboxes, fazer provedores específicos entrarem em blacklist e até mesmo pode ser utilizado por trolling para zoar amigos, celebridades, empresas e companheiros de trabalho por Trolls e codar um exemplo simples de uma ferramenta utilizando apenas 3 funções (uteis) com Python. Nele estaremos prosseguindo com uma conta Fake do GMAIL para efetuar os envios em flood. O script a seguir, como vocês vão notar, só realiza conexões diretamente com o serviço SMTP do Gmail, caso queira adaptar para outros provedores, basta alterar a função de test() inserindo as credenciais e até mesmo modificar as funções para uso de SSL/TLS e certificados. Então como primeiro passo, será necessário criar uma conta fake no Gmail.

Este artigo possui intuito educativo, afim de informar programadores, estudantes e profissionais de segurança da informação sobre o assunto. Não nos responsabilizamos pelo uso indevido das ferramentas.

"O lado Negro não é mais Poderoso, apenas mais fácil e mais sedutor"

Esse método se consiste em explorar o uso do Sendmail. Uma biblioteca de envios SMTP do Linux que podem ser compilada ou instalada direto dos repositórios.

 # apt-get install sendmail sendmail-bin  # Debian
 # yum install sendmail  # CentOS/RHEL 7

Vamos importar as bibliotecas necessárias para codar o E-mail Bomb. Certifique-se de ter todas elas instaladas no seu sistema. Caso não tenha, basta procurar pelas mesmas utilizando o Pip ou o Easy_Install. resolver as dependências fica por conta de vocês.




Agora vamos declarar uma função 'Main' que iremos utilizar para pegar o email e senha da conta do gmail que vamos utilizar para efetuar o bomb. Note que no meio da sua função estamos chamando a função 'test()', passando com argumentos as variáveis email_user, email_pass que coletamos. Vamos criar ela agora.

Definindo a função 'Test()' com os argumentos email_user, email_pass. Vamos utilizar essa função para tentar a conexão SMTP com o Gmail 'smtp.gmail.com' na porta 587 com o objeto 'conn' construído utilizando as credenciais. Caso esse teste ocorra de fato, ele irá retornar a variável de conexão que criamos. Utilizaremos esta para efetuar o flood.



Agora iremos criar uma outra função que será responsável pelo envio de emails. Essa é a mais legal, onde iremos coletar os dados de destino, mensagem e assunto e junto com as bibliotecas importadas do MIMEText e MIMEMultipart, iremos formatar essas variáveis num formato específico de e-mail e guardá-los na variável 'message'.



Para que a mensagem saia nos padrões corretos ocidentais, é necessário realizar o encode da mesma quando transformarmos a mensagem e os headers em email-format

 message.attach(MIMEText(text, 'plain', 'utf-8'))  


Fazendo Download do Código

# wget https://raw.githubusercontent.com/msfidelis/MyHackingTools/master/Trolling%20Scripts/Email%20Flood%20Trolling/Email-Flood.py
# chmod +x Email-Flood.py 

Para que você consiga realizar o procedimento , será necessário logar com sua conta Fake do Google, ir nas opções de segurança e habilitar a opção 'Permitir Dispositivos Menos Seguros'.
 https://www.google.com/settings/security/lesssecureapps  



E-mail Bombing

Com o script que acabamos de fazer/baixar, vamos chamá-lo com o Python e fornecer as credenciais de acesso para nossa conta fake no Gmail.

 # python Email-Flood.py  



Informe o Destinatário, Assunto e Mensagem e avance para o Flood



SOBRE O AUTOR

Matheus Fidelis

http://msfidelis.github.io/

Power Ranger, Piloto de Helicópteros e Astronauta da NASA. Desenvolvedor Web PHP com foco em Backend e POO, Linux SysAdmin DevOps e Entusiasta Python. Criou esse site pra contribuir com a comunidade com coisas que aprende dentro de um setor maluco de TI :)

2 comentários:

 
Nanoshots | Open Source Security, Linux e Tutoriais © 2015 - Designed by Templateism.com