Python Scapy 递归 DNS 查询
Python Scapy a Recursive DNS Query
我正在尝试使用 Python scapy 创建递归 DNS 查询数据包,以展示开放式 DNS 解析器上的放大漏洞。以下是数据包:
p = IP(src=srcIP,dst=destIP) / UDP(sport=53,dport=53) / DNS(qd=DNSQR(qname="isc.org", qtype="ANY"))
send(p)
但是,回复没有显示任何放大。事实上,响应的大小小于发送的数据包。
我上面的数据包结构是否正确?如何使其成为递归查询?
您的数据包是正确的,应该可以使用。我刚刚查看了Google的public DNS服务器8.8.8.8,我发送的数据包长53字节,得到的答案是107。
"recursion desired"位在Scapy中默认是激活的(可以输入DNS().rd
勾选returns1),这里就不用多做了。
我能看到的唯一奇怪的事情是你正在使用源端口 53,一些防火墙可能会过滤源端口 < 1024 的数据包。你可以尝试使用随机源端口,看看它是否更好。
我正在尝试使用 Python scapy 创建递归 DNS 查询数据包,以展示开放式 DNS 解析器上的放大漏洞。以下是数据包:
p = IP(src=srcIP,dst=destIP) / UDP(sport=53,dport=53) / DNS(qd=DNSQR(qname="isc.org", qtype="ANY"))
send(p)
但是,回复没有显示任何放大。事实上,响应的大小小于发送的数据包。
我上面的数据包结构是否正确?如何使其成为递归查询?
您的数据包是正确的,应该可以使用。我刚刚查看了Google的public DNS服务器8.8.8.8,我发送的数据包长53字节,得到的答案是107。
"recursion desired"位在Scapy中默认是激活的(可以输入DNS().rd
勾选returns1),这里就不用多做了。
我能看到的唯一奇怪的事情是你正在使用源端口 53,一些防火墙可能会过滤源端口 < 1024 的数据包。你可以尝试使用随机源端口,看看它是否更好。