KaliLinux渗透测试实战2.1DNS信息收集=

更新时间:2023-11-15 11:04:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Kali Linux渗透测试实战 2.1 DNS信息收集

从本节开始,我们从头开始,系统的学习基于Kali Linux的web应用渗透测试。 本章主要目标是从各个角度搜集测试目标的基本信息,包括搜集信息的途径、各种工具的使用方法,以及简单的示例。 按照循序渐进的原则,第一节讲解如何搜集DNS信息。对于工具的使用,我这里不打算把使用说明再搬到这里,意义不大。读者希望google就可以了。 如果您对DNS的工作原理不是很了解,我建议您先在网上或者书籍上查阅相关资料。本节也对相关概念做了简单诠释,作为学习的辅助。

目录

2.1 DNS信息收集 1

2.1.1 whois查询 3 2.1.2 域名基本信息查询 4

Dns服务器查询 4 a记录查询 4 mx记录查询 5 2.1.3 域名枚举 5

fierse 5 dnsdict6 6 2.1.4 反向地址解析 7

2.1.5 关于DNS区域传送漏洞 8 小结 11

2.1 DNS信息收集

从本节开始,我们从头开始,系统的学习基于Kali Linux的web应用渗透测试。

本章主要目标是从各个角度搜集测试目标的基本信息,包括搜集信息的途径、各种工具的使用方法,以及简单的示例。 按照循序渐进的原则,第一节讲解如何搜集DNS信息。对于工具的使用,我这里不打算把使用说明再搬到这里,意义不大。读

者希望google就可以了。

如果您对DNS的工作原理不是很了解,我建议您先在网上或者书籍上查阅相关资料。本节也对相关概念做了简单诠释,作为学

习的辅助。

关于DNS(参考:http://zh.wikipedia.org/zh-cn/???????3????; http://man.ddvip.com/linux/debian/bin9/bind9-conf-2.html):

域名系统(英文:Domain Name System,DNS)是因特网的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,

能够使人更方便的访问互联网。DNS 使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

DNS 命名用于 Internet 等 TCP/IP 网络中,通过用户友好的名称查找计算机和服务。当用户在应用程序中输入 DNS 名称时,DNS 服务可以将此名称解析为与之相关的其他信息,如 IP 地址。

例如,多数用户喜欢使用友好的名称(如 debian.linuxsir.org)来查找计算机,如网络上的邮件服务器或 Web 服务器。友好名

称更容易了解和记住。但是,计算机使用数字地址在网络上进行通讯。为更容易地使用网络资源,DNS 等命名系统提供了一种方法,将计算机或服务的用户友好名称映射为数字地址。

下图显示了 DNS 的基本用途,即根据计算机名称查找其 IP 地址。

本例中,客户端计算机查询 DNS 服务器,要求获得某台计算机(Debian.linuxsir.org)的 IP 地址。由于 DNS 服务器能够根

据其本地数据库应答此查询,因此,它将以包含所请求信息的应答来回复客户端,即一条主机 (A) 资源记录,其中含有 Debian.linuxsir.org 的 IP 地址信息(211.93.98.20)。

此例显示了单个客户端与 DNS 服务器之间的简单 DNS 查询。实际上,DNS 查询要复杂得多,包含此处未显示的许多其他步

骤。

当 DNS 客户端需要查询程序中使用的名称时,它会查询 DNS 服务器来解析该名称。客户端发送的每条查询消息都包括三条信

息,指定服务器回答的问题:

* 指定的 DNS 域名,规定为完全合格的域名 (FQDN)

* 指定的查询类型,可根据类型指定资源记录,或者指定查询操作的专用类型。 * DNS 域名的指定类别。

例如,指定的名称可为计算机的 FQDN,如 Debian.linuxsir.org ,并且指定的查询类型用于通过该名称搜索地址 (A) 资源记录。

将 DNS 查询看作客户端向服务器询问由两部分组成的问题,如“您是否拥有名为‘Debian.linuxsir.org’的计算机的 A 资源记录?”当客户端收到来自服务器的应答时,它将读取并解释应答的 A 资源记录,获取根据名称询问的计算机的 IP 地址。

DNS 查询以各种不同的方式进行解析。有时,客户端也可使用从先前的查询获得的缓存信息在本地应答查询。DNS 服务器可使

用其自身的资源记录信息缓存来应答查询。DNS 服务器也可代表请求客户端查询或联系其他 DNS 服务器,以便完全解析该名称,并随后将应答返回至客户端。这个过程称为递归。

另外,客户端自己也可尝试联系其他的 DNS 服务器来解析名称。当客户端执行此操作时,它会根据来自服务器的参考答案,使

用其他的独立查询。这个过程称为迭代。

总之,DNS 查询进程分两部分进行:

* 名称查询从客户端计算机开始,并传输至解析程序即 DNS 客户端服务程序进行解析。 * 不能在本地解析查询时,可根据需要查询 DNS 服务器来解析名称。 记录类型

主条目:域名服务器记录类型列表 DNS系统中,常见的资源记录类型有:

主机记录(A记录):RFC 1035定义,A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。 别名记录(CNAME记录): RFC 1035定义,CNAME记录用于将某个别名指向到某个A记录上,这样就不需要再为某个新名字另

外创建一条新的A记录。

IPv6主机语录(AAAA记录): RFC 3596定义,与A记录对应,用于将特定的主机名映射到一个主机的IPv6地址。

服务位置记录(SRV记录): RFC 2782定义,用于定义提供特定服务的服务器的位置,如主机(hostname),端口(port number)等。 NAPTR记录: RFC 3403定义,它提供了正则表达式方式去映射一个域名。NAPTR记录非常著名的一个应用是用于ENUM查询。 完整的记录类型列表参考:dns记录类型

2.1.1 whois查询

WHOIS(域名数据库查询)

一个域名的所有者可以通过查询WHOIS数据库而被找到;对于大多数根域名服务器, 基本的WHOIS由ICANN维护,而WHOIS

的细节则由控制那个域的域注册机构维护。

对于240多个国家代码顶级域名(ccTLDs),通常由该域名权威注册机构负责维护WHOIS。例如中国互联网络信息中心(China

Internet Network Information Center)负责 .CN 域名的WHOIS维护,香港互联网注册管理有限公司(Hong Kong Internet Registration Corporation Limited) 负责 .HK 域名的WHOIS维护,台湾网络信息中心 (Taiwan Network Information Center) 负责 .TW 域名的WHOIS维护。

提供whois查询的站点很多 google“whois”,你可以得到这些站点。

另外所有的域名提供商都提供whois信息查询。比如在万网查询“iprezi.cn”,会得到如下信息:

在whois查询中,注册人姓名和邮箱信息,通常对于测试个人站点非常有用,因为我们可以通过搜索引擎,社交网络,挖掘出很多域名所有人的信息。而对于小站点而言,域名所有人往往就是管理员。

对于大型站点,我们更关心DNS服务器,很多公司都会有自己的域名服务器,这些服务器可以成为渗透测试过程中的一个突破点。

2.1.2 域名基本信息查询

Dns服务器查询

除了whois查询之外,我们还可以通过host命令来查询dns服务器,命令格式为: host -t ns domainName 如下图:

通过“host –t ns mbdongbo.com”得到该域名的两个服务器为ns12.xincache.com,ns11.xincache.com。

a记录查询

A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server

上。同时也可以设置您域名的子域名。通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当你输入域名的时候给你引导向设置在DNS的A记录所对应的服务器。

通过

host -t a domainName 可以查询a记录

mx记录查询

MX记录也叫做邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操控所有的邮箱设

置。您只需在线填写您服务器的IP地址,即可将您域名下的邮件全部转到您自己设定相应的邮件服务器上。

简单的说,通过操作MX记录,您才可以得到以您域名结尾的邮局。 通过

host -t mx domainName

可以查询该域名下的mx记录,从而可以得到邮件服务器信息。

2.1.3 域名枚举

在得到主域名信息之后,如果能通过主域名得到所有子域名信息,在通过子域名查询其对应的主机IP,这样我们能得到一个较为

完整的信息。

fierce

使用fierce工具,可以进行域名列表查询: fierce -dns domainName

如上图,通过fierce,成功枚举出某域名下的子域名列表。

关于fierse的工作原理,可以查看:http://ha.ckers.org/fierce/。

除fierse之外,dnsdict6、dnsenum、dnsmap都可以进行域名枚举,需要说明的是,每个工具返回的结果并不相同,而且有的

工具还有错误,读者进行dns信息搜集的时候,要尽量使用不同的工具,尽可能得到完整的信息。dnsdict6、dnsenum、dnsmap进行枚举的时候都是使用字典,进行扫描,这里以dnsdict6为例。

dnsdict6

dnsdict6使用你提供的一个字典或者内置的列表来枚举,基于dnsmap。 使用语法:

dnsdict6 [-d46] [-s|-m|-l|-x] [-t 线程] [-D] 域名 [字典路径] 参数说明: -4 显示ipv4

-t 指定要使用的线程 默认:8 最大:32

-D =================[只显示字典不扫描]====

-d 显示在DNS服务器上的NS(一种服务记录类型)MX(邮件服务器) ipv6 的域名信息

-[smlx] 选择字典大小[内置的] -s 小型是50条 -m 中等是796条[默认] -l 大型1416条 -x 最大3211条 示例:

2.1.4 反向地址解析

本文来源:https://www.bwwdw.com/article/uwjv.html

Top