- 进入cpan
perl -MCPAN -e shell - 安装相关包
install Net::DNS
(如果这种方式太慢,就到网站http://www.cpan.org/authors/01mailrc.txt.gz去下载,然后放到CPAN软件包下) - 然后将以下代码保存成 buildpacket.pl (名字自定义就好)
use Net::DNS;
if ( $#ARGV != 0 ) {
print "Usage: perl buildpacket.pl <domain>\n";
print " Example: perl buildpacket.pl 1x1.cz\n";
print " Coded by Vypor, https://github.com/Vypor\n";
exit(1);
}
my $domain = $ARGV[0];
my $dnspacket = new Net::DNS::Packet( $domain, 'IN', 'ANY' );
$dnspacket->header->qr(0); #Query Responce Flag
$dnspacket->header->aa(0); #Authoritative Flag
$dnspacket->header->tc(0); #Truncated Flag
$dnspacket->header->ra(0); #Recursion Desired
$dnspacket->header->rd(1); #Recursion Available
$udp_max = $dnspacket->header->size(65527); #Max Allowed Byte Size
my $dnsdata = $dnspacket->data;
open (FILE, ">>$domain.pkt");
print FILE $dnsdata;
close FILE;
-
生成探针文件(正向 popular域名请求)
perl buildpacket.pl baidu.com -
接下来就可以用这个探针文件去扫了
zmap -p 53 -M udp --probe-args=file:baidu.com.pkt -n 10000 -o dns_fingerprint.txt
此时dns_fingerprint.txt中的扫描结果:
在这里插入代码片
61.70.117.235
178.20.159.119
193.180.178.72
67.225.170.36
192.64.35.145
185.71.5.65
201.0.218.55
176.9.194.47
- 修改一下输出模式
zmap-1.0.3# zmap -p 53 -M udp --probe-args=file:baidu.com.pkt -n 10000 --output-module=extended_file -o re.txt
此时re.txt中的结果为:
response, saddr, daddr, sport, dport, seq, ack, in_cooldown, is_repeat, timestamp
data, 213.32.58.29, 192.168.43.195, 53, 32424, 1338872, 1195757569, 1, 0,2019-11-22 17:41:04.615
data, 221.164.88.200, 192.168.43.195, 53, 16024, 1345241, 1195757569, 1, 0,2019-11-22 17:41:04.615