【问题标题】:DNS Enumeration with DiG使用 DiG 进行 DNS 枚举
【发布时间】:2021-04-09 04:19:09
【问题描述】:

我试图用 dig 枚举子域,但我找不到子域名。主域名无法访问,但肯定在 DNS 记录中。

如果我对主域 example.com 运行 dig:

$ dig example.com

; <<>> DiG 9.11.5-P4-5.1+b1-Debian <<>> example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54795
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;example.com.       IN  A

;; AUTHORITY SECTION:
example.com.    300 IN  SOA ns-1536.awsdns-00.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400

;; Query time: 2 msec
;; SERVER: 10.84.0.2#53(10.84.0.2)
;; WHEN: Sat Jan 02 22:03:37 UTC 2021
;; MSG SIZE  rcvd: 136

我还尝试针对 10.84.0.2 进行区域传输:

$ dig example.com @10.84.0.2 axfr

; <<>> DiG 9.11.5-P4-5.1+b1-Debian <<>> example.com @10.84.0.2 axfr
;; global options: +cmd
; Transfer failed.

有没有办法枚举子域?区域转移似乎不起作用,那么还有其他方法吗?

【问题讨论】:

    标签: security dns subdomain enumeration dig


    【解决方案1】:

    我试图用 dig 枚举子域

    你可以在这里停下来,因为你不能这样做,事先不知道名字。

    我还尝试针对 10.84.0.2 进行区域传输:

    区域传输几乎总是被拒绝,无论是出于技术原因(没有人认为区域所有者真的需要它,这意味着网络流量很大)或隐私问题(有些人认为 DNS 数据部分是私有的,因此只在需要知道的基础,而不是批量)。

    如果我对主域 example.com 运行 dig:

    $ dig example.com
    

    不,你没有。像这样使用dig 意味着您实际上查询A 记录。不保证任何给定名称(包括 apex)都具有 A 记录。您收到的回复称为“NODATA”,意思是“NOERROR”(名称正常且存在)但也没有答案(没有 ANSWER 部分),因为此名称没有 A 记录(您要求的),但有其他记录类型(因为它是顶点,它至少有 NSSOA 记录)。

    因此,基于此dig 查询,您得出的“主域名无法访问”的结论是错误的。

    有没有办法枚举子域?

    有多种启发式方法,但没有保证的解决方案。由于你没有解释你需要做什么,而且在这个阶段这并不是一个真正的编程问题,所以进一步冒险进入这部分是题外话。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-30
      • 2016-02-26
      • 1970-01-01
      • 2017-09-05
      • 1970-01-01
      相关资源
      最近更新 更多