2016-03-23 2 views
0

Я пытаюсь создать функцию фильтра, проверить, является ли пакет от Facebook, это мой код:Scapy нюхают pakets

def filter_facebook(packet): 
    return (IP in packet and (packet[IP].src == "www.facebook.com" or packet[IP].dst == "www.facebook.com")) 
packets = sniff(count = 5, lfilter = filter_facebook) 

теперь эта функция блокирует продолжение и не нюхать что-нибудь, когда я вхожу в Facebook ,

ответ

0

сейчас эта функция блокирует продолжение и не нюхает ничего, когда i я входить на facebook.

Это связано с тем, что никакие пакеты не соответствуют вашему фильтру, а sniff() ожидает до 5 пакетов.

Во-первых, вы не можете использовать «www.facebook.com» в качестве значения сравнения с IP-адресом. Вы можете сначала обнюхать DNS-трафик, чтобы найти, какие адреса связаны с www.facebook.com, как предложено here, или найти его по-другому, а затем фильтровать по этим адресам.

Во-вторых, рекомендуется фильтровать с интерфейсом (iface) при обнюхивании, который получает пакеты из Интернета в вашей ситуации.

+0

Я изменил его на свой IP-адрес (я проверил его с помощью ping в CMD), но он все еще не работает – ariel20