dnsrecon -d xxx.com -t std的逐条解析
输入:
dnsrecon -d baidu.com -t std
输出:
DNSSEC is not configured for baidu.com
[*] SOA dns.baidu.com 110.242.68.134
[*] NS ns3.baidu.com 36.155.132.78
[*] Bind Version for 36.155.132.78 dns"
[*] NS ns3.baidu.com 153.3.238.93
[*] Bind Version for 153.3.238.93 dns"
[*] NS dns.baidu.com 110.242.68.134
[*] Bind Version for 110.242.68.134 dns"
[*] NS ns2.baidu.com 220.181.33.31
[*] Bind Version for 220.181.33.31 dns"
[*] NS ns7.baidu.com 180.76.76.92
[*] Bind Version for 180.76.76.92 dns"
[*] NS ns7.baidu.com 240e:bf:b801:1002:0:ff:b024:26de
[*] Bind Version for 240e:bf:b801:1002:0:ff:b024:26de dns"
[*] NS ns7.baidu.com 240e:940:603:4:0:ff:b01b:589a
[*] Bind Version for 240e:940:603:4:0:ff:b01b:589a dns"
[*] NS ns4.baidu.com 111.45.3.226
[*] Bind Version for 111.45.3.226 dns"
[*] NS ns4.baidu.com 14.215.178.80
[*] Bind Version for 14.215.178.80 dns"
[*] MX mx.n.shifen.com 111.202.115.85
[*] MX mx.n.shifen.com 111.206.215.185
[*] MX usmx01.baidu.com 12.0.243.41
[*] MX jpmx.baidu.com 119.63.196.201
[*] MX mx50.baidu.com 12.0.243.41
[*] MX mx.maillb.baidu.com 111.206.215.185
[*] MX mx1.baidu.com 220.181.3.85
[*] MX mx1.baidu.com 111.202.115.85
[*] A baidu.com 39.156.66.10
[*] A baidu.com 110.242.68.66
[*] TXT baidu.com google-site-verification=GHb98-6msqyx_qqjGl5eRatD3QTHyVB6-xQ3gJB5UwM
[*] TXT baidu.com v=spf1 include:spf1.baidu.com include:spf2.baidu.com include:spf3.baidu.com include:spf4.baidu.com -all
[*] TXT baidu.com 9279nznttl321bxp1j464rd9vpps246v
[*] TXT baidu.com _globalsign-domain-verification=qjb28W2jJSrWj04NHpB0CvgK9tle5JkOq-EcyWBgnE
[*] TXT _dmarc.baidu.com v=DMARC1; p=quarantine; rua=mailto:baidu-spammail@baidu.com; ruf=mailto:baidu-spammail@baidu.com
[*] Enumerating SRV Records
[+] SRV _sips._tcp.baidu.com vcs.wshifen.com 182.61.62.50 5061
[+] SRV _sip._tcp.baidu.com vcs.wshifen.com 182.61.62.50 5060
[+] SRV _h323cs._tcp.baidu.com vcs.wshifen.com 182.61.62.50 1720
[+] SRV _h323ls._udp.baidu.com vcs.wshifen.com 182.61.62.50 1719
[+] SRV _xmpp-client._tcp.baidu.com xmpp.wshifen.com 182.61.62.50 5222
[+] SRV _xmpp-server._tcp.baidu.com xmpp.wshifen.com 182.61.62.50 5269
[+] SRV _sipfederationtls._tcp.baidu.com sip.n.shifen.com 111.202.115.68 5061
[+] SRV _sip._tls.baidu.com sip.baidu.com 111.202.115.68 443
[+] SRV _autodiscover._tcp.baidu.com email.baidu.com 111.206.215.187 443
[+] 9 Records Found
下面是对这些结果的简要解释:
- General Enumeration:对
baidu.com
执行的一般性枚举。 - DNSSEC:未为
baidu.com
配置DNSSEC,这是一种用于保护DNS记录不被篡改的技术。 - SOA Record(Start of Authority):域名的权威起始记录,这里指向
dns.baidu.com
,IP是110.242.68.134
。 - NS Records(Name Server):域名的命名服务器记录,列出了负责该域名解析的DNS服务器及其IP地址。
- Bind Version:列出了一些DNS服务器使用的BIND软件版本。BIND是一种常用的DNS服务器软件。
- MX Records(Mail Exchange):邮件交换记录,指定了处理该域名电子邮件的邮件服务器。
- A Records(Address):地址记录,将域名指向IP地址。
- TXT Records:文本记录,用于存储任意文本信息,常见用途包括SPF记录、域名验证、DKIM设置等。
- SRV Records(Service):服务记录,用于指定特定服务的服务器和访问端口。
例如:
-
MX mx.n.shifen.com 111.202.115.85
表示mx.n.shifen.com
是处理baidu.com
电子邮件的服务器之一,IP地址是111.202.115.85
。 -
A baidu.com 39.156.66.10
表示baidu.com
域名的IP地址之一是39.156.66.10
。 -
TXT baidu.com v=spf1 include:spf1.baidu.com include:spf2.baidu.com include:spf3.baidu.com include:spf4.baidu.com -all
表示baidu.com
的SPF记录,用于电子邮件验证。 -
DMARC Record:基于SPF和DKIM的电子邮件身份验证、报告和一致性协议。
-
Enumerating SRV Records:枚举SRV记录,这些记录用于指定特定服务的服务器信息,包括域名、服务类型、端口号等。
例如:
SRV _sip._tcp.baidu.com vcs.wshifen.com 182.61.62.50 5060
表示对于baidu.com
域内的SIP服务,可以通过vcs.wshifen.com
(IP地址182.61.62.50
)在5060端口上访问。
host和nslookup脚本实现上述的功能
这里使用nslookup举例,dig和host同理
nslookup -type=SOA baidu.com
nslookup -type=NS baidu.com
nslookup -type=MX baidu.com
nslookup -type=TXT baidu.com
nslookup -type=SRV _sip._tcp.baidu.com
其中我们发现对于SRV的查询,需要涉及到对如下这些特定服务的SRV记录查询:
"_sips._tcp" "_sip._tcp" "_h323cs._tcp" "_h323ls._udp" "_xmpp-client._tcp" "_xmpp-server._tcp" "_sipfederationtls._tcp" "_sip._tls" "_autodiscover._tcp"
这里我们可以编写自动化流程的脚本实现用遍历查询:
#!/bin/bash
# 定义一个数组,包含要查询的服务
services=("_sips._tcp" "_sip._tcp" "_h323cs._tcp" "_h323ls._udp" "_xmpp-client._tcp" "_xmpp-server._tcp" "_sipfederationtls._tcp" "_sip._tls" "_autodiscover._tcp")
# 循环遍历服务数组
for service in "${services[@]}"; do
# 使用dig命令查询SRV记录
echo "Querying SRV record for ${service}.baidu.com"
dig SRV ${service}.baidu.com
echo "" # 打印空行以分隔输出
done
-
#!/bin/bash
:- 这是一个shebang(井号和感叹号的组合),用来告诉系统这个脚本应该使用哪个解释器来执行。在这个例子中,它指定使用Bash(Bourne Again Shell)来执行脚本。
-
services=("_sips._tcp" "_sip._tcp" "_h323cs._tcp" "_h323ls._udp" "_xmpp-client._tcp" "_xmpp-server._tcp" "_sipfederationtls._tcp" "_sip._tls" "_autodiscover._tcp")
:- 这行定义了一个名为
services
的数组,其中包含了一系列的服务前缀。这些前缀将被用来构造SRV记录的查询。
- 这行定义了一个名为
-
for service in "${services[@]}"; do
:- 这是一个for循环,它遍历
services
数组中的每个元素。${services[@]}
是数组元素的引用方式,do
关键字标志着循环体的开始。
- 这是一个for循环,它遍历
-
echo "Querying SRV record for ${service}.baidu.com"
:echo
命令用于在终端输出文本。这里它输出了一行文本,告诉用户当前正在查询哪个服务的SRV记录。${service}
是数组当前元素的变量替换。
-
dig SRV ${service}.baidu.com
:- 这行执行了
dig
命令来查询当前服务的SRV记录。${service}
会被替换为数组中的当前元素,然后与baidu.com
拼接形成完整的SRV记录查询。这里可以替换为nslookup或host的命令host -t SRV ${server}.baidu.com
nslookup -type=SRV ${server}.baidu.com
- 这行执行了
-
echo ""
:- 这个
echo
命令输出了一个空行,用来在连续的查询输出之间提供分隔,提高输出的可读性。
- 这个
-
done
:- 这个关键字标志着for循环的结束。
整个脚本的工作流程是:
- 定义一个包含服务名称的数组。
- 遍历数组中的每个服务名称。
- 对于每个服务名称,使用
dig
命令查询baidu.com
域下的相应SRV记录。 - 在每次查询后输出一个空行,以分隔不同服务的查询结果。
SRV的含义
_sips._tcp.baidu.com has SRV record 0 0 5061 vcs.wshifen.com.
_sip._tcp.baidu.com has SRV record 0 0 5060 vcs.wshifen.com.
_h323cs._tcp.baidu.com has SRV record 0 0 1720 vcs.wshifen.com.
_h323ls._udp.baidu.com has SRV record 0 0 1719 vcs.wshifen.com.
_xmpp-client._tcp.baidu.com has SRV record 0 0 5222 xmpp.wshifen.com.
_xmpp-server._tcp.baidu.com has SRV record 0 0 5269 xmpp.wshifen.com.
_sipfederationtls._tcp.baidu.com has SRV record 0 0 5061 sip.n.shifen.com.
_sip._tls.baidu.com has SRV record 0 0 443 sip.baidu.com.
_autodiscover._tcp.baidu.com has SRV record 0 0 443 email.baidu.com.
DNS SRV记录的输出结果,它们提供了关于特定服务在特定域名上运行的服务器的信息。SRV记录用于指定某项服务的域名和端口号,以及提供服务的主机名或IP地址。下面是每条记录的详细含义:
-
SRV _sips._tcp.baidu.com vcs.wshifen.com 182.61.62.50 5061
- 服务(_sips):SIP(会话初始协议)的安全版本,用于VoIP通信。
- 协议(_tcp):TCP(传输控制协议)。
- 域名(baidu.com):服务所在的域名。
- 目标主机(vcs.wshifen.com):提供服务的主机名。
- 端口(5061):服务监听的端口号。
- 含义:在
baidu.com
域中,安全SIP服务通过TCP协议在vcs.wshifen.com
主机的5061端口上提供。
-
SRV _sip._tcp.baidu.com vcs.wshifen.com 182.61.62.50 5060
- 类似于上一条,但是是非安全版本的SIP服务,端口是5060。
-
SRV _h323cs._tcp.baidu.com vcs.wshifen.com 182.61.62.50 1720
- 服务(_h323cs):H.323会议服务,用于视频会议。
- 端口(1720):H.323服务监听的端口号。
-
SRV _h323ls._udp.baidu.com vcs.wshifen.com 182.61.62.50 1719
- 服务(_h323ls):H.323逻辑单元服务,用于信令。
- 协议(_udp):UDP(用户数据报协议)。
- 端口(1719):H.323逻辑单元服务监听的端口号。
-
SRV _xmpp-client._tcp.baidu.com xmpp.wshifen.com 182.61.62.50 5222
- 服务(_xmpp-client):XMPP(可扩展消息和存在协议)客户端到服务器通信。
- 目标主机(xmpp.wshifen.com):提供XMPP服务的主机名。
- 端口(5222):XMPP客户端通信的端口号。
-
SRV _xmpp-server._tcp.baidu.com xmpp.wshifen.com 182.61.62.50 5269
- 服务(_xmpp-server):XMPP服务器间通信。
- 端口(5269):XMPP服务器间通信的端口号。
-
SRV _sipfederationtls._tcp.baidu.com sip.n.shifen.com 111.202.115.68 5061
- 服务(_sipfederationtls):SIP联合服务,使用TLS(传输层安全性)加密。
- 目标主机(sip.n.shifen.com):提供SIP联合服务的主机名。
- IP地址(111.202.115.68):直接指定了提供服务的IP地址。
- 端口(5061):SIP联合服务监听的端口号。
-
SRV _sip._tls.baidu.com sip.baidu.com 111.202.115.68 443
- 服务(_sip):SIP服务,使用TLS加密。
- 目标主机(sip.baidu.com):提供SIP服务的主机名。
- 端口(443):通常用于HTTPS的端口,这里用于加密的SIP服务。
-
SRV _autodiscover._tcp.baidu.com email.baidu.com 111.206.215.187 443
- 服务(_autodiscover):自动发现服务,通常用于邮件客户端配置。
- 目标主机(email.baidu.com):提供自动发现服务的主机名。
- IP地址(111.206.215.187):直接指定了提供服务的IP地址。
- 端口(443):自动发现服务监听的端口号,通常与HTTPS相同。