1987WEB视界-分享互联网热点话题和事件

您现在的位置是:首页 > 域名 > 正文

域名

百万域名情况下,如何快速获取域名的IP列表

1987web2022-08-11域名426

来自公众号:信安之路

在我们针对某个目标进行信息收集时,获取二级域名可能是我们最重要的环节,公司越大,使用的多级域名越多,收集到域名之后,想要做端口扫描话,直接针对域名做扫描吗?

当然不是,因为同一个 IP 可能被配置了多个域名,直接针对域名做端口扫描也不是不可以,就是会做很多重复的工作,所以要先将这些域名解析成 IP 地址,然后进行去重,这样能够大大节约端口扫描的时间。

当我们有百万个域名需要解析 IP 地址,该怎么办?当然是用工具啦,有代码编写能力的,可以自实现批量解析 IP 地址的工作,如果没有编程基础,可以使用开源免费的工具,今天就来给大家分享一款解析 DNS 记录的工具 dnsx:

https://github.com/projectdiscovery/dnsx

该项目由 go 语言编写,首先你需要安装好 go 的编译环境,然后安装很简单:

go get -v github.com/projectdiscovery/dnsx/cmd/dnsx

安装完成之后,会在 go 的目录下生成一个可以运行的 exe 文件,你可以将该文件放在任意 windows 服务器上使用,使用如下命令查看帮助信息:

dnsx -h

我们可以将域名列表保存在一个文件中,比如 dns.txt,然后使用命令:

dnsx -l dns.txt -resp -a

上面的命令是查询域名的 A 记录,你也可以查询多种记录,比如A, AAAA, CNAME, PTR, NS, MX, TXT, SOA记录,很简单,很方便吧?

如果是自己实现域名解析的话,用 python 脚本也比较简单,核心的代码如下:

s= socket.gethostbyname(domain)

结合 python 的多线程技术,就可以实现快速针对目标域名列表进行域名解析了。

除了这两种方式,还可以直接使用 Linux 的命令:

cat domains.txt | xargs -n1 host | grep "has address" | cut -d" " -f4 | sort -u > ips.txt

会写脚本的情况下,这个目标很容易实现,不会写也没关系,会用开源免费的工具一样可以达到效果。

最后,作为一名专业的渗透测试工作者,编写脚本的能力是必不可少的,既要会用优秀的安全工具,还要知道工具的实现原理,并且还能自己编写相关功能,可以在未来实际的工作中,提高工作效率。

--- EOF ---

推荐↓↓↓