- 浏览: 287750 次
文章分类
- 全部博客 (276)
- burp+hydra暴力破解 (1)
- kali linux工具集 (6)
- kali (59)
- linux (54)
- password (14)
- web (63)
- 渗透测试 (50)
- windows (40)
- metasploit (9)
- 信息收集 (32)
- burp suit (4)
- 安全审计 (9)
- https://github.com/secretsquirrel/the-backdoor-factory (0)
- nmap (4)
- arachni (2)
- 工具 (5)
- sql (3)
- 网络 (2)
- 后渗透测试 (10)
- 内网 (5)
- 无线 (2)
- C (3)
- bios (1)
- RoR (12)
- mongodb (1)
- linxu (1)
- gdb (1)
- linux,虚拟化 (1)
- python (4)
最新评论
原文地址:http://resources.infosecinstitute.com/ghost-domain-names/
DNS是一类将人们可读的域名转换成IP的命名系统。当要查询一个不在解析缓冲的域名时,通过从根服务到顶级域(例如.com)递归查询整个DNS层级。顶级域(TLD)提供关于拥有我们要查询的域名IP信息的命名服务器的信息,然后从命名服务器获取负责维护与它相关的信息。查询结果由DNS解析器的缓存保存一定的时间,到期后失效。
有些时候,一个域名可能被识别为恶意的以及需要被删除。有各种原因,例如钓鱼。一种常用的组织用户访问某个域名的方法就是从它的TLD中删除它的域。但是这不是完全移除来危害因为域仍然有解析器解析直到TTL到期。通常这不是问题因为TTL值很短,恶意的域名将在几秒钟或几分钟过期。
这个本文介绍的漏洞的攻击向量是cache更新逻辑的缺点。这个漏洞允许cache通过一种可能连续延迟某个域名的授权数据的TTL并且阻止它过期而被覆盖。域名将被永远被解析即使它已从TLD服务器中删除,这种类型的域名称为Ghost Domain Names
DNS查询
我们将实验从根域名到顶级域名遍历来查询一个DNS。打开一个终端,输入dig:
我们就得到来DNS根服务器,现在我使用DNS根服务器来查询infosecinstitute.com
现在我们获得一组.com域的权威命名服务器。注意结尾处的点(.)。这个就是FQDN。
现在我们获得一组infosecinstitute.com域的权威命名服务器(ns1.pairnic.com和ns2.pairnic.com)。我们查询这些命名服务器来获得infosecinstitute.com的IP
从Answer Section部分我们可以看到infosecinstitute.com的IP是 216.92.251.5
同时也可以设置自己的DNS服务器来查询不同的记录,如下图,我们将用Google的DNS服务器8.8.8.8来进程DIG查询一个DNS记录
3599表明由DNS提供的记录的存活时间。如果我们再次查询,我们会发现TTL现在减少到3503.
如果发现一个域名为恶意的域名,那么从全球域名空间中移除它需要两步。第一步是从TLD中移除它的记录,然后等待所有DNS中的TTL过期。
要识别一个域名的IP,一个很重要的事情就是了解某一个域的授权数据。授权数据包含一个域的NS记录以及它的A记录,例如命名服务器的IP地址。授权数据同时还有一个TTL用于告诉我们这个授权数据会在cache中存活多久。下图是我查询顶级.com域名服务器来给我提供一个不存在的子域名,在Authority Section 和 Additional Section中它返回包含该域的NS记录以及命名服务器的IP。
我们来看一个例子,我将会在我的网站上创建一个叫infosec.searching-eye.com的子域名。
然后我们通过8.8.8.8 来查询子域名
从answer section中可以看到响应,我们可以看到TTL值为14399,授权数据现在被这个服务器cache来。现在我们删除这个子域名。
我们可以看到,infosec.searching-eye.com已经被成功删除,我们再次使用同一个DNS服务器来查询infosec.searching-eye.com
这是由于记录被缓存到Google的DNS服务器中来,同时我们可以看到TTL减少到12790
我们通过我们默认的DNS服务器来查询一下相同的子域名
如上图所示,没有响应。这是因为在我们的默认DNS服务器中没有缓存该记录,所以它需要递归整个DNS层级来查询子域名的IP,一旦它到达TLD(例如.com),它就会发现没有记录。于是没有结果返回。
二)漏洞
漏洞存在于某些DNS服务器的缓存更新策略。如同早先讨论的,即使一个域名从全球域名空间中删除,也会在所有的DNS的TTL过期之后授权数据才会消失。如果存在某种方法是授权数据的TTL永远大于0,那么它们将仍然会被解析。
值得注意的是大多数DNS服务器都存在这个漏洞。
第一步注册一个命名服务器,通常有你的域名提供商提供该服务。我想让我的域名是xyz.mydomain.com类型的,而不是xyz.hostingcompany.com。你提供的IP必须是一个合法的命名服务器的IP。
我们注册晚命名服务器之后,我们把它置为我们的命名服务器。
通过查询一个不存在的子域名,我们可以发现testns.searching-eye.com已经被成功设置成一个命名服务器了
然后创建一个ghost.searching-eye.com.的子域名
然后通过一个有漏洞的DNS服务器来查询子域名。
现在我们知道授权数据已经被DNS服务器cache了。继续删除子域名,授权数据的TTL将不断减少。因为我们知道授权数据是一个域的NS记录和命名服务器的A记录,可以表示为
删除子域名后,一段时间后授权数据看起来应是
下一步是把命名服务器改成test2.searching-eye.com.使用和之前一样的DNS服务器,我们查询命名服务器test2.searching-eye.com.的A记录。
解析器将会查询授权数据,然后查询testns.searching-eye.com,它的IP实际上是test2.searching-eye.com的IP。它将会返回命名服务器的IP。但是注意又有了一个新的命名服务器(因为名字改变了),并且它会覆盖旧的cache(不同DNS服务器的cache策略不同)。cache更新之后,授权数据将会看起来如下(如果DNS不严格遵守cache更新策略以及含有漏洞):
注意新的授权数据有一个新的TTL值,如果这个过程不停重复,那么就可能保持TTL大于0(虽然有些时候,它有可能变为0).
为了成功广泛实施这种攻击,攻击者必须在攻击者的授权域名过期之前尽可能多的查询有漏洞的DNS服务器。
检测Ghost Domain Names
Ghost Domain Names是那些已经从TLD中删除但是仍可以被DNS解析的域名,有两种原因:
1. 域名的授权数据的TTL没有过期
2. TTL被有漏洞的DNS服务器更新
通过如下步骤识别ghost domain names
1.类似上文中的DNS查询小节中通过递归查询
2. 使用某一个特定的DNS服务器查询A记录
如果DNS查询阶段没有给我们返回一个IP但是使用某一个特定的DNS服务器给我们返回一个IP,很有可能该域名就是一个ghost domain names。我们不能肯定它就是一个ghost domain names因为可能DNS上的授权数据的TTL可能真的没有过期。所以现在的问题是识别域名是否是ghost domain names
可以采取如下步骤:
1. 记录授权数据的TTL
2. 等待授权数据的TTL过期,再次查询,如果DNS仍然能够解析域名,那么我们可以肯定域名是ghost domain names。
DNS是一类将人们可读的域名转换成IP的命名系统。当要查询一个不在解析缓冲的域名时,通过从根服务到顶级域(例如.com)递归查询整个DNS层级。顶级域(TLD)提供关于拥有我们要查询的域名IP信息的命名服务器的信息,然后从命名服务器获取负责维护与它相关的信息。查询结果由DNS解析器的缓存保存一定的时间,到期后失效。
有些时候,一个域名可能被识别为恶意的以及需要被删除。有各种原因,例如钓鱼。一种常用的组织用户访问某个域名的方法就是从它的TLD中删除它的域。但是这不是完全移除来危害因为域仍然有解析器解析直到TTL到期。通常这不是问题因为TTL值很短,恶意的域名将在几秒钟或几分钟过期。
这个本文介绍的漏洞的攻击向量是cache更新逻辑的缺点。这个漏洞允许cache通过一种可能连续延迟某个域名的授权数据的TTL并且阻止它过期而被覆盖。域名将被永远被解析即使它已从TLD服务器中删除,这种类型的域名称为Ghost Domain Names
DNS查询
我们将实验从根域名到顶级域名遍历来查询一个DNS。打开一个终端,输入dig:
我们就得到来DNS根服务器,现在我使用DNS根服务器来查询infosecinstitute.com
现在我们获得一组.com域的权威命名服务器。注意结尾处的点(.)。这个就是FQDN。
现在我们获得一组infosecinstitute.com域的权威命名服务器(ns1.pairnic.com和ns2.pairnic.com)。我们查询这些命名服务器来获得infosecinstitute.com的IP
从Answer Section部分我们可以看到infosecinstitute.com的IP是 216.92.251.5
同时也可以设置自己的DNS服务器来查询不同的记录,如下图,我们将用Google的DNS服务器8.8.8.8来进程DIG查询一个DNS记录
3599表明由DNS提供的记录的存活时间。如果我们再次查询,我们会发现TTL现在减少到3503.
如果发现一个域名为恶意的域名,那么从全球域名空间中移除它需要两步。第一步是从TLD中移除它的记录,然后等待所有DNS中的TTL过期。
要识别一个域名的IP,一个很重要的事情就是了解某一个域的授权数据。授权数据包含一个域的NS记录以及它的A记录,例如命名服务器的IP地址。授权数据同时还有一个TTL用于告诉我们这个授权数据会在cache中存活多久。下图是我查询顶级.com域名服务器来给我提供一个不存在的子域名,在Authority Section 和 Additional Section中它返回包含该域的NS记录以及命名服务器的IP。
我们来看一个例子,我将会在我的网站上创建一个叫infosec.searching-eye.com的子域名。
然后我们通过8.8.8.8 来查询子域名
从answer section中可以看到响应,我们可以看到TTL值为14399,授权数据现在被这个服务器cache来。现在我们删除这个子域名。
我们可以看到,infosec.searching-eye.com已经被成功删除,我们再次使用同一个DNS服务器来查询infosec.searching-eye.com
这是由于记录被缓存到Google的DNS服务器中来,同时我们可以看到TTL减少到12790
我们通过我们默认的DNS服务器来查询一下相同的子域名
如上图所示,没有响应。这是因为在我们的默认DNS服务器中没有缓存该记录,所以它需要递归整个DNS层级来查询子域名的IP,一旦它到达TLD(例如.com),它就会发现没有记录。于是没有结果返回。
二)漏洞
漏洞存在于某些DNS服务器的缓存更新策略。如同早先讨论的,即使一个域名从全球域名空间中删除,也会在所有的DNS的TTL过期之后授权数据才会消失。如果存在某种方法是授权数据的TTL永远大于0,那么它们将仍然会被解析。
值得注意的是大多数DNS服务器都存在这个漏洞。
第一步注册一个命名服务器,通常有你的域名提供商提供该服务。我想让我的域名是xyz.mydomain.com类型的,而不是xyz.hostingcompany.com。你提供的IP必须是一个合法的命名服务器的IP。
我们注册晚命名服务器之后,我们把它置为我们的命名服务器。
通过查询一个不存在的子域名,我们可以发现testns.searching-eye.com已经被成功设置成一个命名服务器了
然后创建一个ghost.searching-eye.com.的子域名
然后通过一个有漏洞的DNS服务器来查询子域名。
现在我们知道授权数据已经被DNS服务器cache了。继续删除子域名,授权数据的TTL将不断减少。因为我们知道授权数据是一个域的NS记录和命名服务器的A记录,可以表示为
ghost.searching-eye.com 86400 IN NS testns.searching-eye.com testns.searching-eye.com 86400 IN A abc.32.31.xy
删除子域名后,一段时间后授权数据看起来应是
ghost.searching-eye.com 46400 IN NS testns.searching-eye.com testns.searching-eye.com 46400 IN A abc.32.31.xy
下一步是把命名服务器改成test2.searching-eye.com.使用和之前一样的DNS服务器,我们查询命名服务器test2.searching-eye.com.的A记录。
解析器将会查询授权数据,然后查询testns.searching-eye.com,它的IP实际上是test2.searching-eye.com的IP。它将会返回命名服务器的IP。但是注意又有了一个新的命名服务器(因为名字改变了),并且它会覆盖旧的cache(不同DNS服务器的cache策略不同)。cache更新之后,授权数据将会看起来如下(如果DNS不严格遵守cache更新策略以及含有漏洞):
ghost.searching-eye.com 86400 IN NS test2.searching-eye.com test2.searching-eye.com 86400 IN A 192.32.31.xy
注意新的授权数据有一个新的TTL值,如果这个过程不停重复,那么就可能保持TTL大于0(虽然有些时候,它有可能变为0).
为了成功广泛实施这种攻击,攻击者必须在攻击者的授权域名过期之前尽可能多的查询有漏洞的DNS服务器。
检测Ghost Domain Names
Ghost Domain Names是那些已经从TLD中删除但是仍可以被DNS解析的域名,有两种原因:
1. 域名的授权数据的TTL没有过期
2. TTL被有漏洞的DNS服务器更新
通过如下步骤识别ghost domain names
1.类似上文中的DNS查询小节中通过递归查询
2. 使用某一个特定的DNS服务器查询A记录
如果DNS查询阶段没有给我们返回一个IP但是使用某一个特定的DNS服务器给我们返回一个IP,很有可能该域名就是一个ghost domain names。我们不能肯定它就是一个ghost domain names因为可能DNS上的授权数据的TTL可能真的没有过期。所以现在的问题是识别域名是否是ghost domain names
可以采取如下步骤:
1. 记录授权数据的TTL
2. 等待授权数据的TTL过期,再次查询,如果DNS仍然能够解析域名,那么我们可以肯定域名是ghost domain names。
发表评论
-
[译]从配置错误的web server中dump git数据
2015-03-26 01:07 581原文地址:https://blog.netspi.com/du ... -
全路径泄漏
2014-11-17 01:43 460参考: https://www.owasp.org/index ... -
[译]snmp使用
2014-11-13 23:19 964原文地址:http://pen-testing.sans.or ... -
Linux取证
2014-11-06 21:25 889原文地址:http://resources.infosecin ... -
默认口令枚举DPE
2014-11-02 00:21 480原文地址:http://resources ... -
[翻译]web代理链
2014-11-01 22:21 1799原文地址:http://resources ... -
windows WMIC
2014-10-28 00:42 0原文地址:http://resources.infosecin ... -
[转]Security Dangers of Web Management Interfaces
2014-10-13 00:33 340转http://resources.infosecinstit ... -
使用climber进行安全检查
2014-10-10 13:37 531climber:Automated auditing tool ...
相关推荐
标题中的“ghost11.02dos版.ghost32版12.ghost64位版11.5.1版”提及了三个不同版本的Ghost软件,分别是Ghost 11.02 DOS版、Ghost 32位版12和Ghost 64位版11.5.1。这三个版本各有其特点和适用场景: 1. **Ghost ...
Symantec Ghost 11.5.1.2266 集成精简版 和 Ghost 8.3.0.1331 汉化绿色版本 汉化版说明: 1、此为汉化的集成精简版,不需要安装原版软件即可使用。 2、汉化版中包括以下文件: ghost.exe DOS 环境下使用的 Ghost ...
Ghost软件和Ghost Explorer是IT行业中两个非常重要的工具,主要用于数据备份和系统恢复。Ghost软件源自美国赛门铁克公司(Symantec Corporation),是个人计算机领域广泛应用的数据迁移和克隆工具,尤其在系统安装和...
Ghost工具集包含了不同版本的Ghost工具,如Ghost32、GhostXP和Ghost8.3,以及Ghost批处理生成器,它们各自在系统维护中扮演着重要的角色。 1. **Ghost32**:这是早期的Ghost版本,主要用于32位Windows系统。它提供...
ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控ghost远控...
【Ghost 3.6详解】 Ghost 3.6是一款经典的磁盘克隆和备份软件,由赛门铁克(Symantec)公司开发。在IT领域,Ghost是系统部署、数据保护和恢复的重要工具,尤其在批量安装操作系统时,它的效率和便捷性得到了广泛...
**Ghost 32 11.0:Windows操作系统中的经典备份与恢复工具** Ghost,全称为Ghost System Imaging Tool,是由Symantec公司开发的一款著名的硬盘克隆与备份软件。Ghost 32 11.0是针对Windows操作系统的一个版本,它在...
《Ghost32与Ghost64:32位与64位系统的备份恢复工具》 Ghost32和Ghost64是著名的硬盘克隆和备份恢复工具,由Symantec公司开发,广泛应用于个人用户和企业环境中。这两个软件的主要功能是创建系统镜像,以便在系统...
《诺顿Ghost 11.5 for Win32:硬盘备份与恢复的得力助手》 诺顿Ghost,全称Symantec Ghost,是全球知名的系统备份与恢复软件,尤其在Windows操作系统环境下表现出色。这款名为"ghost11.5 for win32"的版本,专为32...
《Ghost远控:2020免杀技术与远程控制详解》 Ghost远控是一款知名的远程控制软件,因其高效、隐蔽的特点,在IT行业内备受关注。本文将深入探讨Ghost远控的2020免杀技术及其在远程控制领域的应用。 首先,让我们...
《Ghost32:详解与应用》 Ghost32是一款经典的磁盘克隆和备份工具,由赛门铁克公司(Symantec)开发,广泛应用于系统安装、数据保护及灾难恢复等领域。其名称来源于“GHOST”,即“General Hardware Oriented ...
一键Ghost是一款在中国非常流行的系统备份与恢复工具,它简化了Ghost(Ghost是Symantec公司开发的一款磁盘映像工具)的操作流程,使得用户能够快速地进行系统备份、恢复和克隆,尤其对于电脑初学者来说,操作简便,...
ghost-Ghost-Ghost
一键Ghost8.0硬盘版是一款深受用户喜爱的系统恢复工具,尤其适合那些不希望依赖光盘进行系统恢复的用户。这个版本将Ghost软件的操作过程进行了极大的简化,使得即便是计算机初级用户也能轻松上手,实现快速备份和...
【一键GHOST硬盘版2016】是一款针对Windows系统的备份与还原工具,它主要功能是将操作系统及其相关数据快速备份到硬盘上,并且能够进行快速还原,极大地简化了系统维护工作。这款软件区别于传统的ISO镜像制作工具,...
《Ghost2009 还原操作详解》 Ghost2009,是Symantec公司推出的一款强大的硬盘克隆与备份恢复工具,尤其在系统还原方面有着广泛的应用。本篇文章将详细介绍如何使用Ghost2009进行系统还原,帮助用户在系统出现问题时...
GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版GHOST远控 0611免杀版...
《Ghost 8.2:系统恢复与备份的实用工具》 Ghost 8.2 是一款在IT行业内广泛应用的系统恢复和备份软件,尤其适合个人用户和小型企业进行数据保护。这款软件以其简单易用的“一键还原”功能,使得复杂的系统备份和...
《32位操作系统下的GHOST程序:Ghost32详解及应用》 在计算机技术领域,Ghost(全称:General Hardware Oriented Software Transfer)是一款由Symantec公司开发的强大磁盘克隆与备份恢复工具,其32位版本,即Ghost...
一键Ghost是一种在中国广泛使用的系统备份和恢复工具,它简化了Ghost操作流程,使得普通用户也能轻松进行系统的备份、恢复和克隆。Ghost是赛门铁克(Symantec)公司开发的一款磁盘映像工具,它能将硬盘上的分区或...