Más vale prevenir…

Un ataque muy conocido y que puede conseguir que datos sensibles acaben en manos equivocadas es el «man in the middle». Una persona malintencionada puede tener éxito con este tipo de ataque, simplemente, haciéndose pasar por nuestro router. Parece complicado, pero no lo es.

Si conocemos la dirección MAC y la dirección IP de nuestro router, podemos detectar este tipo de situaciones con este pequeño script, escrito en Python, del que resalto la función relacionada con la detección del intruso y su invocación:

def arp_monitor_callback(pkt):
 if ARP in pkt and pkt[ARP].op == 2:
    direhw = pkt.sprintf("%ARP.hwsrc%")
    ip = pkt.sprintf("%ARP.psrc%")
    if ip == routerip and direhw != macrouter:
       syslog.syslog("ARP SPOOF: ARP SPOOF Detected. 
             Sniffer MAC Direction is %sn" % direchw)
def main(argv):
 global routerip, macrouter
 [routerip, macrouter]=parseArgumentos(argv)
 syslog.syslog("ARP SPOOF: Analyzing arp spoof  
    for router %s with MAC %s n" % 
    (routerip, macrouter))
 try:
    sniff(prn=arp_monitor_callback, filter="", store=0)
 except:
    print "Abort executionn"
 exit(1)