Visite também: Viva o Linux · Dicas-L · NoticiasLinux · SoftwareLivre.org



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

[Dica] Criando o Arduino ARP Cop

Linux user
Publicado por Luiz Vieira em 09/04/2010

Login: luizvieira, 256608 pontos Homepage: http://hackproofing.blogspot.com/
[ Hits: 3508 ]

Criando o Arduino ARP Cop

Usando Python para monitorar ataques ARP Poisoning com Arduino.

No vídeo existente no link abaixo, é demonstrado um projeto simples que qualquer pessoa pode realizar com um Arduino. O Arduino é uma plataforma de prototipagem eletrônica open source que utiliza um microcontrolador AVR e uma placa simples de I/O (entrada/saída).

Para este projeto foi utilizado um script Python rodando no computador, que monitora a existência de ARP Poisoning na rede com o uso do plugin ARP Cop do Ettercap.

Se o ataque de ARP Poisoning é detectado, o script se comunicará com o Arduino através da porta USB e o Arduino irá ligar um LED.

Dessa maneira o usuário pode ser rapidamente informado quando sua rede estiver sob ataque.
Código do Arduino (Arp_Cop.pde):

int outPin = 11;
int val;
int arpPoison = 0;
int red;

void setup()
{
  pinMode(outPin, OUTPUT); // sets the digital pin as output
  Serial.begin(9600);
  Serial.flush();
}

void loop()
{
  // Read from serial port
  if (Serial.available())
  {
    val = Serial.read();
    Serial.print(val);
    if (val == 'A')
    {
       arpPoison = 1;
       for(red = 0; red <= 255; red+=5)
       {
         analogWrite(outPin, red);
         delay(30);
       }
       while (arpPoison == 1)
       {
         for(red = 255; red >= 25; red-=5)
         {
           analogWrite(outPin, red);
           delay(30);
         }
         for(red = 25; red <= 255; red+=5)
         {
           analogWrite(outPin, red);
           delay(30);
         }
         val = Serial.read();
         Serial.print(val);
         if (val == 'R')
         {
           arpPoison = 0;
           for(red = 255; red >= 0; red-=5)
           {
             analogWrite(outPin, red);
             delay(30);
           }
         }
       }
    }
  }
}


Script python:

import sys, subprocess, serial
if len(sys.argv) != 3:
   print "syntax: " + sys.argv[0] + " <Network Interface> <Serial Interface>\n"
   exit()
try:
   ser = serial.Serial(sys.argv[2], 9600)
except serial.SerialException:
   print "Error: Could not setup Serial Port!"
   sys.exit()
ettercap = subprocess.Popen("ettercap -i " + sys.argv[1] + " -TQP arp_cop //", shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
try:
   while 1:
      inPut = ettercap.stdout.readline()
      inPut = inPut.split(' ')
      for msg in inPut:
         if msg == "(WARNING)":
            print "Arp Poisoning Detected!"
            ser.write('A')
except:
   ser.write('R')
   print "Terminated!"
#out = ettercap.communicate('q')[0]
#print "Done!"


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada O Papel do Security Officer - Uma visão geral
   Dica Linux recomendada Distribuições GNU/Linux para Penetration Test
   Dica Linux recomendada Tripwire: Verificação de integridade de arquivos em servidores
   Dica Linux recomendada Organizações de segurança de redes
   Dica Linux recomendada Grupo de Resposta a Incidentes de Segurança

Comentários
[1] Comentário enviado por mordecai em 11/04/2010 - 16:37h:

e a aí Luiz já pegou seu Arduino ? Muito legal esse artigo!
pelo que entendi o script em python usa o ettercap para detectar o Arp poisoning e manda pro arduino que faz piscar um led. Vou fazer um teste aqui. Abraço.

[2] Comentário enviado por luizvieira em 11/04/2010 - 19:12h:

Fala meu amigo Maurício!
Ainda não peguei meu Arduino não, estava brincando com o kit de um amigo lá do trabalho onde estava e fizemos esse teste e funcionou bonito :-)
Isso foi feito com o ARP Poisoning, imagine com outros tipos de ataques... Seria interessante, por exemplo, tentar uma implementação para detectar ataques de DoS. O "bichinho" é muito show!
Ainda vou fazer um robô para os meus filhos um dia...rs.
[ ]'s



Contribuir com comentário
  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Contribuir com: [ Artigo | Conf | Dica | Notícia ]
Responsáveis pelo site: Fábio Berbert de Paula / OYS Academy
Site hospedado por:

Segurança Linux

Site especializado em conteúdo de segurança para Linux.