如何获取域的所有子域的列表?

时间:2020-03-06 14:42:29  来源:igfitidea点击:

我想找出给定域的所有子域。我发现了一个提示,告诉我使用以下选项来挖掘权威的名称服务器:

dig @ns1.foo.bar some_domain.com axfr

但这是行不通的。有谁有更好的主意/方法

解决方案

如果DNS服务器配置正确,则我们将无法获得整个域。如果出于某种原因允许从任何主机进行区域传输,则必须向其发送正确的数据包以发出该请求。我怀疑这就是我们包含的dig语句所做的。

在Windowsnslookup中,命令是

ls -d somedomain.com > outfile.txt

它将子域列表存储在outfile.txt中

这些天来很少有域名允许

提示(使用axfr)仅在我们要查询的NS(示例中为ns1.foo.bar)配置为允许来自所使用IP的AXFR请求时有效;除非IP被配置为该域的辅助域,否则这几乎是不可能的。

基本上,如果不允许使用axfr,没有简单的方法可以做到这一点。这是有意的,因此解决该问题的唯一方法是通过蛮力(例如,dig a.some_domain.com,dig b.some_domain.com等),因为它可能会导致这种情况被视为拒绝服务攻击。

仅在连接到域的DNS服务器时才可以执行此操作-并且已为IP地址启用了AXFR。这是辅助系统用来从主系统加载区域的机制。在过去,这不受限制,但是由于安全方面的考虑,大多数主要名称服务器都有一个白名单:辅助名称服务器+几个特殊系统。

如果我们使用的名称服务器允许这样做,则可以使用dig或者nslookup。

例如:

#nslookup

>ls domain.com

注:由于dig和其他较新版本的工具不建议使用nslookup,因此nslookup的某些版本不支持" ls",尤其是Mac OS X的捆绑版本。

  • dig somedomain.com soa
  • dig @ ns.SOA.com somedomain.com axfr

免费的robotex工具可让我们执行此操作,但是它们使我们首先输入域的ip:

  • 找出ip(有一个很好的ff插件可以做到这一点,但我无法发布链接cos,这是我的第一篇文章!)
  • 在robotex上进行ip搜索:http://www.robtex.com/ip/
  • 在随后的结果页面中,单击我们感兴趣的域>
  • 我们将被带到列出所有子域的页面以及其他负载(例如邮件服务器信息)的页面

如果我们无法从DNS获取此信息(例如,我们未获得授权),则可以使用Wolfram Alpha。

  • 在搜索框中输入域,然后运行搜索。 (例如stackexchange.com)
  • 在顶部的第3部分(名为"所有stackexchange.com的网络统计信息")中,单击"子域"
  • 在"子域"部分中,单击"更多"。

我们将能够在此处看到子域列表。尽管我怀疑它不会显示所有子域。

我们可以使用此站点查找子域查找子域

该工具将尝试进行区域传输,并向搜索引擎查询子域列表。