(计算机应用技术专业论文)入侵诱骗系统中虚拟环境的设计与实现.pdf_第1页
(计算机应用技术专业论文)入侵诱骗系统中虚拟环境的设计与实现.pdf_第2页
(计算机应用技术专业论文)入侵诱骗系统中虚拟环境的设计与实现.pdf_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京航空航天大学硕士学位论文 i 摘要 随着 internet 的发展,基于网络的应用系统越来越多,现代社会对网络的 依赖日益增强,同时网络的安全也面临着巨大的挑战。面对威胁,众多安全机 构研发了许多安全产品,但攻击者的技术水平也在不断提高,安全产品的更新 换代始终跟不上新问题的出现,往往在某个攻击造成了巨大损失后,才采取补 救措施。原有单一的安全技术,如防火墙或入侵检测技术,不足以保护网络安 全。因此只有通过在对网络安全防御体系和各种网络安全技术和工具的研究基 础上,制定具体的系统安全策略,通过设立多道的安全防线、集成各种可靠的 安全机制,建立完善的多层安全防御体系,才能抵御来自系统内、外的入侵攻 击,达到维护网络系统的安全。 本文在基于入侵诱骗技术的思想上,提出了一种新的主动防御系统-入 侵诱骗系统。该入侵诱骗体系的设计思想是以诱骗虚拟环境为核心,在其中对 可疑行为进行监视分析,同时自动地收集相关的信息、进行审计跟踪,并把审 计信息反馈到入侵检测系统,以达到增强入侵检测能力的目的。该系统的体系 结构由防火墙、入侵检测系统、主机特征检测、入侵规则生成、入侵诱骗虚拟 环境组成。 本文重点对入侵诱骗系统中虚拟环境的设计和实现给出了详细的说明。虚 拟环境是真实环境的仿真,它的作用在于可以降低真实环境受到随机攻击或刺 探的可能性, 以达到保护真实环境的功能。 本文所设计的虚拟环境可以提供ftp、 telnet虚拟网络服务、虚拟文件系统服务、系统保护功能、攻击行为记录功能、 日志记录远程传出服务等。经实验证明,该虚拟环境对攻击者能够起到良好的 欺骗效果,同时能够记录攻击者的行为。 关键词关键词:入侵诱骗,虚拟环境,虚拟服务,虚拟文件系统 入侵诱骗系统中虚拟环境的设计与实现 ii abstract with the development of internet, a growing number of web-based applications, modern society increasingly dependent on the network, and network security are also faced with enormous challenges. in the face of threats, many security agencies to develop a number of security products, but the attackers are constantly improving the level of technology, security products always keep upgrading the emergence of new issues, often resulting in a tremendous loss of attacks after remedial measures. the sole security technology, like the firewall or the intrusion detection technology, is insufficient to protect the network security. good multi system security strategy based on the research of all kinds of network security technologies and defense system can avoid being attacked from the inside and outside attackers. the paper proposes intrusion deception system based on intrusion deception technology. the design idea of intrusion deception system is that the intrusion deception virtual environment is core. doubtful behavior redirected to the strictly controlled deception environment can be supervised, audited, and analyzed. all audited information is sent to the intrusion detection system to improve the ability of intrusion detection. intrusion deception virtual environment is emphasized on its design and implement. virtual environment mimics the real environment, which can protect the real environment from the attackers probe and attack. the designed virtual environment can provide ftp and telnet virtual network service, virtual file system, system protection function, log record transmission service. after experimentation, the virtual environment has good effect on attacker and at the same time it can record the behavior of the attacker. key words: intrusion deception, virtual environment, virtual service, virtual file system 承诺书 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立 进行研究工作所取得的成果。 尽我所知, 除文中已经注明引用的内容 外, 本学位论文的研究成果不包含任何他人享有著作权的内容。 对本 论文所涉及的研究工作做出贡献的其他个人和集体, 均已在文中以明 确方式标明。 本人授权南京航空航天大学可以有权保留送交论文的复印件, 允 许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或其他复制手段保存论文。 (保密的学位论文在解密后适用本承诺书) 作者签名: 日 期: 南京航空航天大学硕士学位论文 1 第一章 绪论 1.1 课题的背景 1.1.1 网络面临的安全问题 随着 internet 的不断发展,黑客的攻击手段也日益复杂。继病毒、恶意攻 击之后,间谍软件、恶意代码、僵尸网络、ddos 等新的网络安全威胁层出不穷, 这些网络安全威胁不仅造成了网络状况的混乱,而且对金融、电力等关系国计 民生的领域带来了极大的风险和损失。以蠕虫病毒为例,它是目前危害最大的 一种恶意代码攻击,它是可以自我复制的独立程序并通过系统存在的漏洞和设 置的不安全性来进行入侵。蠕虫自身的特性可以使它以极快的速度传播。1988 年 11 月 2 日,morris 蠕虫发作,几天之内 6000 台以上的 internet 服务器被 感染而瘫痪,损失超过一千万美元。2001 年 7 月 19 日,codered1蠕虫爆发, 在爆发后的 9 小时内就攻击了 25 万台计算机,造成的损失估计超过 20 亿美元, 随后几个月内产生了威力更强的几个变种,其中 codered ii 造成的损失估计超 过 12 亿美元。2001 年 9 月 18 日,nimda2蠕虫被发现,对 nimda 造成的损失评 估数据已经从 5 亿美元攀升到 26 亿美元。近年来从漏洞发现到蠕虫产生的时间 间隔越来越短,蠕虫的传播速度越来越快,造成的损失越来越巨大,这导致网 络安全问题变得日益严峻。 1.1.2 网络安全问题产生的根源 网络不安全问题是个不可以回避的现实,造成不安全的原因也是多方面的, 归结起来主要有以下几方面的因素3。 首先,网络的开放性以及黑客的攻击是造成网络不安全的主要原因。由于 tcp/ip4协议缺乏相应的安全机制,且 internet 最初设计时基本没有考虑安全 问题,且 internet 的共享性和开放性使网上信息安全存在先天不足。internet 自设立之初就缺乏对安全性的总体构想和设计,而 tcp/ip 协议最初是建立在可 信的环境之下,主要考虑的是网络互联,所以它缺乏对安全方面的考虑。广播 传输、易被监视与窃听、脆弱的认证机制、没有有效的发送源定位机制,这些 都是由于 tcp/ip 开放机制引发的缺陷。 入侵诱骗系统中虚拟环境的设计与实现 2 其次,随着软件系统规模的不断扩大,系统软件、应用软件正变得越来越 复杂,要设计一个绝对安全的系统是非常困难的。即使是 windonws 和 unix 系 统也都或多或少地存在安全漏洞,众多的服务器、浏览器和桌面软件也被发现 存在安全隐患,组成计算机网络的某些关键技术也并非安全,这就导致大多数 攻击可以通过操作系统或安全服务软件漏洞而实现5。 第三,互联网宽带的不断增加,使得获取大数据包和各种其他信息变得越 来越快捷,也为攻击者在网络上发动攻击提供了一个途径,使攻击不再存在于 地域的限制、时间的限制6。 第四,黑客获取系统核心技术资料的途径增多,使攻击者有足够的条件来 分析软件中可能存在的漏洞,也很方便的将安全检测用于网络攻击7。 最后,网络管理不完善造成许多安全隐患。网络系统的严格管理是网络用 户免受攻击的重要措施。此外,管理的缺陷还可能出现系统内部人员泄露机密 或外部人员通过非法手段截获而导致机密信息的泄漏,从而造成来自系统内部 的攻击。 1.1.3 网络安全防护技术 为了解决网络中面对的各种威胁与攻击,构建安全的网络体系,就涉及到 对各种网络安全技术的应用。常见的网络安全防护技术8包括身份认证、加密技 术、访问控制、防火墙、入侵检测等。 身份认证 身份认证是证实一个声称的身份或角色(如用户机器、节点等)是否真实的 过程,它是实现授权、审计等访问控制过程的必要条件,是计算机网络安全系 统不可缺少的组成部分。为了证明自己的身份,用户一般是出示只有自己知道 的机密信息,例如口令、个人身份号码(pin)、密钥等,其弱点是用户的认证信 息在传输和存储过程中可能被破解、窃取和盗用。 加密技术 加密技术一般用来保护存储或传输信息的机密性,也可用来验证数据的完 整性和用户、计算机、消息的“身份” ,还可以用于数字签名。加密系统既可单 独实现,也可以集成到应用程序或者网络服务内。在加密技术使用中,管理上 很可能出现漏洞。另外,公开加密算法的破解水平也在不断提高。 南京航空航天大学硕士学位论文 3 访问控制 访问控制技术用来控制对网络、应用程序、信息的访问,需要认证机制来 确认用户的身份。访问控制一般被集成到应用程序和系统软件内,它的弱点是 可能会被攻击者绕过,安全策略也可能出现漏洞。 防火墙技术 防火墙设备对所有进出受保护主机和网络的信息流进行控制,在网络中一 般放在单位内部网和因特网之间,用以控制入侵者不能进入内部网络,内部敏 感信息不泄露到外部网络。防火墙可以检查进出网络数据包的协议类型、源地 址、目的地址和端口号以及数据包的内容,并决定是否允许其通过。 防火墙从逻辑上看是一个分离器,也是一个分析器,有效地监控了内部网 和外部网之间的任何活动。其工作原理是按照事先规定好的配置和规则,监测 并过滤所有通向外部网络或从外部网络传来的信息,只允许授权的数据通过。 防火墙的基本策略有两种: (1)一切未被允许的就是禁止的。基于该准则,防火墙应封锁所有信息流, 然后对希望提供的服务逐项开放。这是一种非常实用的方法,可以造成一种十 分安全的环境,因为只有经过仔细挑选的服务才被允许使用。其弊端是,用户 所能使用的服务范围受到严格限制。 (2)一切未被禁止的就是允许的。 基于该准则, 防火墙应转发所有的信息流, 然后逐项屏蔽可能有害的服务。这种方法构成了一种更为灵活的应用环境,可 为用户提供更多的服务。其弊端是,在日益增多的网络服务面前,特别是在受 保护的网络范围增大时,很难提供可靠的安全保护。 过滤技术是防火墙技术的核心,已有的过滤技术有以下几种类型9: 1.数据包过滤:数据包过滤技术是在网络层对数据包进行分析、选择。其 依据是系统内设置的过滤逻辑,称为访问控制表(access control table)。通 过检查数据流中的每一个数据包的源地址、目的地址、所用端口号、协议状态, 或它们的组合来确定是否允许该数据包通过。 2.应用层网关:应用层网关技术是在应用层上实现协议过滤和转发功能。 针对特定的网络应用服务协议使用指定的数据过滤逻辑,并在过滤的同时对数 据包进行必要的分析统计等。一般安装在专用工作站上。应用层网关技术和数 入侵诱骗系统中虚拟环境的设计与实现 4 据包过滤技术有一个共同点就是仅仅依靠特定的逻辑来判断是否允许数据包通 过。一旦符合条件,防火墙内外的计算机系统便可建立联系。 3.应用层代理服务器:应用层代理服务器技术能将所有跨越防火墙的网络 通信链路分为两段,防火墙内外计算机系统间应用层的连接由两个代理服务器 之间的连接来实现,外部计算机的网络链路只能到达代理服务器,从而起到隔 离防火墙内外计算机系统的作用。另外,代理服务器也对过往的数据包进行分 析和记录。 4.状态检测防火墙:状态检测又称动态包过滤,是在网络层由一个检查引 擎截获数据包并抽取出与应用层状态有关的信息,并以此作为依据决定对该连 接是接受还是拒绝。检查引擎维护一个动态的状态信息表并对后续的数据包进 行检查。一旦发现任何连接的参数有意外的变化,该连接就被中止。这种技术 提供了高度安全的解决方案,同时也具有较好的性能、适应性和扩展性。 实际构筑防火墙时一般选用上述一种或几种过滤技术,综合运用多种策略, 将多个不同的部件组合在一起构成不同的防火墙体系结构,可以实现控制不安 全的服务、站点访问控制、集中安全保护等保护措施,提高来自外部网络非法 用户对内部网络攻击的安全性,但是防火墙防范的前提仍旧是对各种已经识别 的攻击进行正确的配置。随着网络攻击技术及工具的发展,防火墙在网络安全 防护中的缺点逐渐暴露出来。 (1)不能防御内部攻击者。来自内部的攻击者是从网络内部发起攻击的,他 们的所有攻击行为都不通过防火墙。由于防火墙只是用来隔离内部网与 internet上的主机,监控内部网与internet间的通信,而对内部网的通信情况 不作检查,因而对于来自内部的攻击无能为力。 (2)不能防御绕过防火墙的攻击。根本上讲,防火墙是一种被动的防御手段, 只能守株待兔式地对通过它的数据包进行检查,如果该数据包由于某种原因没 有通过防火墙,则防火墙就不会采取任何主动的措施.并不是所有通信都从防火 端通过,这有可能是因为错误的配置或者是人为在防火墙后设置了“后门” 。 (3)不能防御完全新的威胁。防火墙被用来防备已知的威胁。一个好的设置 也许可以防备许多潜在的威胁,例如,通过禁止除极少数被信任的服务以外的 所有服务,来防备这些服务中可能存在的潜在的安全隐患,但是人们发现以前 认为是可信赖的服务中存在新的侵袭方法,可信赖的服务变成不可信赖的了。 所以不能期待只设置一次防火墙,它就能永远有效地保护网络。 南京航空航天大学硕士学位论文 5 (4)不能防御数据驱动的攻击。防火墙不能防御基于数据驱动的攻击。虽然 防火墙扫描分析所有通过的信息,但是这种扫描分析多半是针对ip地址和端口 号或者协议内容的,而非数据细节。这种基于数据驱动的攻击,比如病毒,可 以附在诸如电子邮件之类的东西上面进入到系统中并发动攻击。因此,防火墙 只能作为整体安全防范策略中的一部分。 入侵检测技术 入侵检测技术即是指对入侵行为的发觉,它通过从计算机网络或计算机系 统的关键点收集信息并进行分析,从中发现网络或系统中是否有违反安全策略 的行为和被攻击的迹象。入侵检测系统(intrusion detection system, ids)则 是进行入侵检测的软件与硬件的组合。其的作用在于识别入侵者和入侵行为; 检测和监视已成功的安全突破;为对抗入侵及时提供重要信息,阻止入侵事件 的发生和事态的扩大。 入侵检测通过对入侵行为的过程与特征进行研究,使安全系统对入侵时间 和入侵过程做出实时响应。入侵检测系统的入侵分析方法通常有两种技术10: 一是异常检测技术,它对系统的正常行为建模,特征库中没有描述的行为被怀 疑为攻击。假定所有入侵行为都是与正常行为不同的,如果建立系统正常行为 轨迹,那么理论上可以把所有与正常轨迹不同的系统状态视为可疑企图,比如 通过流量统计分析将异常时间的异常网络流量视为可疑。异常检测技术的局限 是并非所有的入侵都表现为异常,而且系统的轨迹难于计算和更新。二是误用 检测技术,它是对不正常的行为进行建模,符合特征库中描述的特征就被视为 攻击。假定所有入侵行为和手段都能够表达为一种模式或特征,那么所有已知 的入侵方法都可以用匹配的方法来发现,误用检测的关键是如何表达入侵的模 式,把真正的入侵与正常行为区分开来。模式发现的优点是误报少,局限是它 只能发现已知的攻击,对未知的攻击无能为力。 入侵检测系统按其输入数据的来源来看,可以分为三类11:一是基于主机 的入侵检测系统,其输入数据来源于系统的审计日志,一般只能检测该主机上 发生的入侵,实时监视可疑的连接、系统日志检查、非法访问的闯入等。如果 其中主体活动十分可疑,入侵检测系统就会采取相应的措施报警或拒绝服务。基 于主机的方法优点是性价比高,适用于主机数量较少的情况下。对网络流量不 敏感,不会因为网络流量的增加而丢掉主机网络行为的监视。这种方法可以很 入侵诱骗系统中虚拟环境的设计与实现 6 容易地检测一些活动,如对敏感文件、目录、程序或端口的存取,而这些活动 很难在基于协议的线索中被发现。但基于主机的入侵检测系统也有明显的不足, 该系统安装在需要保护的设备上,也会降低系统的效率,带来额外的安全问题。 另外,全面部署主机入侵检测系统代价较大,局域网中很难将所有主机用主机 入侵检测系统保护,只能选择部分主机保护,那么未安装主机入侵检测系统的 机器就成为保护的盲点,入侵者可利用这些机器达到攻击目标。二是基于网络 的入侵检测系统,其数据来源于网络。三是采用上述两种数据来源的分布入侵 检测系统,它能够同时分析来自主机系统审计日志和网络数据流的入侵检测系 统,一般为分布式结构,由多个部件组成。 入侵检测系统能够实时地检测网络的信息,防止入侵者的恶意攻击。其主 要功能有用户和系统行为的监测与分析、系统配置和漏洞的审计检查、重要系 统和数据文件的完整性评估、已知攻击行为模式的类别、异常行为模式的统计 分析和操作系统的审计跟踪管理及违反安全策略的用户行为的识别12。但是ids 也面临如下的挑战: (1)数据过载。网络入侵检测系统般都会产生大量的报警信息。产生这些 报警信息既耗费资源又费时间,并且要对这些海量的报警信息进行分析以取得 有价值的信息是非常昂贵的,而且需要专业人士进行分析。 (2)误报。所有的网络入侵检测系统都会产生虚假的报警信息。许多ids在鉴 别合法的行为和可疑的连接之间,都存在着困难。例如个带有演示某个攻击 实例的html页面都会被ids认为是攻击行为, 因为实例代码匹配了某条规则, ids 的虚假报警信息仍然在所难免。 (3)漏报。正如ids会经常产生虚假的报警信息一样,它们也可能漏报,尤其 是对新出现的攻击。攻击者有可能开发出新的工具或者方法绕过ids,或者这些 新的攻击以前就从来没有被截获过。这样网络对新的攻击工具或者方法就没有 任何免疫力。 (4)资源。 ids需要一定的硬件资源以匹配所在网络的带宽。 网络带宽越大宽, 流量越大,对ids的硬件资源要求就越高。另外,还需要大型数据库存储收集到 的报警信息。当局域网的带宽从百兆到千兆时,这个问题会越来越严重。 (5)加密。越来越多的组织都将网络连接进行加密。加密的方法有ssh、ssl 以及ipsec,这显然对提高网络的安全性以及用户数据的保密性都有好处。但是 这个技术使得入侵检测系统也就毫无作为了。总体上ids仍然是被动的、静态的 南京航空航天大学硕士学位论文 7 检测技术。 1.2 课题的意义 通过上面的介绍可以看到,任何单个的安全防护技术都存在弱点,但它们 有一个相同的缺陷就是发现和预防的能力不够,都是在攻击者对网络进行攻击 时才对系统进行被动响应。也就是说,这些防御手段都是通过把入侵阻挡在被 保护系统之外来完成系统防护的,即入侵者在刚刚侵入到系统或者还没有侵入 系统的时候就已经被发现并被禁止做进一步的入侵行为,所以就不可能知道入 侵者的确切的入侵目的,以及入侵者想要进行的进一步入侵行为。这些被动防 范措施只是在一定程度上改善了网络的安全状况,但不能从根本上解决网络安 全的问题。 为了不断提高网络对攻击的防范能力,我们需要改变被动防御的思路,从 主动防御的角度去解决网络安全问题,使系统/网络在对抗攻击时更加积极、主 动而有效。然而,目前国内关于主动防御技术的研究工作比较欠缺,相关产品 比较少见,所以,本文开展对主动防御体系技术的研究和实现具有重要的理论 研究与实际应用意义。 1.3 论文的主要工作 本文的主要工作有以下几个部分: 1.对网络诱骗技术原理和入侵诱骗系统体系结构研究; 2.对入侵诱骗系统进行需求分析、概要设计及详细设计; 3.负责入侵诱骗系统中虚拟环境子系统的设计与实现。 1.4 论文的组织结构 本文分为五章,其结构为: 第一章简要介绍了本文的研究背景与意义,并从网络安全问题及其产生的 根源和常见的网络安全防护技术等三个方面介绍了被动防御技术的现状。同时 也介绍了本论文的相关工作和结构。 第二章介绍了主动防御技术蜜罐的概念、特点、分类、主要技术等,并引 入了入侵诱骗技术的概念。 入侵诱骗系统中虚拟环境的设计与实现 8 第三章介绍了入侵诱骗系统的设计思想、体系结构、功能模块的作用。 第四章详细阐述了入侵诱骗虚拟环境子系统的设计与实现,包括虚拟文件 系统的设计与实现、基于虚拟文件的 ftp 服务的设计与实现、基于虚拟文件的 telnet 服务的设计与实现。 第五章对本论文工作进行了总结,说明在该领域的研究中所做的创新性, 并提出了今后需要改进的地方。 南京航空航天大学硕士学位论文 9 第二章 主动防御技术 本章首先从蜜罐的概念出发,介绍了蜜罐系统的研究现状,对市场上的主要 产品进行了介绍和对比。然后介绍了蜜罐系统运行的基础操作系统,并对互联 网上的常见攻击进行了描述,针对蜜罐的缺点引入了入侵诱骗技术的概念。 2.1 蜜罐 2.1.1 蜜罐的概念和用途 蜜罐系统是一种网络资源,它的价值就是被攻击或者攻陷13。它表面上被 做成一个真实存在的,对黑客具有吸引力的主机,而它的主要目的就是用来被 攻击和探索的,其上一般要放置一些看似重要的资料和数据,但其实是无用的, 这样才使它看上去更像一台真正提供重要服务的主机,成为所谓的“牢笼”主 机。当有黑客对其实施攻击时,就可通过执行后台软件,记录黑客与蜜罐主机 的交互数据,然后利用工具把这些数据加以分析,从而发现攻击者进入系统的 方法和动机。 目前对于蜜罐系统普遍接受的定义是honeynet14项目的领导者lance spitzne提出的定义15:“蜜罐是一种用来引诱未经验证或非法访问的信息系统 资源。 ”蜜罐系统是一种具有吸引和诱捕价值的资源,它期待被检测、攻击和潜 在的利用。蜜罐系统不修补任何安全漏洞,它能提供附加的、有价值的信息。 同时蜜罐还具有转移攻击者注意力,消耗其攻击资源、意志,间接保护真实目 标系统的作用。理想的蜜罐提供一个入侵者可以被捕获的环境,或者提供一些 可以被入侵的弱点,这些弱点都是以真实的系统为背景建立的。建立诱捕系统 的目的不是为了抓住入侵者,而是要监视和学习它们的行为,找出它们是如何 探测和入侵系统的,以及如何才能在真实的系统中阻止类似入侵行为的发生。 2.1.2 蜜罐的分类 蜜罐按其用途可分为两种类型:应用型蜜罐和研究型蜜罐。应用型蜜罐具有 事件检测和欺骗功能,它们所要做的工作就是检测并对付恶意攻击者,目的是 减轻受保护组织将受到的攻击威胁。用来提高商业组织的安全性能,在网络安 全响应环节也发挥着积极的作用,它通常放置在一个部门的内部网络环境中, 入侵诱骗系统中虚拟环境的设计与实现 10 由于它对攻击者具有相当的吸引力,可以诱惑或欺骗攻击者将时间和资源都用 于攻击这个蜜罐上,使它们远离实际的工作网络。因此从某种意义上来说应用 型蜜罐减轻了实际工作网络的安全风险。一般情况下,商业组织利用产品型蜜 罐对自己的网络系统讲行保护。 而研究型蜜罐并不能为应用系统带来直接的安全防护,它是专门以研究和 获取攻击信息为目的而设计的,寻找能够对付这些威胁的更好方式,以此来提 高应用系统的防护、检测和响应能力。研究型蜜罐的主要价值在于能提供一个 学习攻击信息的平台,它是观察、记录、学习攻击者及其攻击行为的最好工具, 而且它还能学习到攻击者在攻陷一个系统后如何与其它黑客通信或者上载新的 工具包等更高价值的信息。相对于应用型蜜罐而言,研究型蜜罐还是捕捉蠕虫 等自动攻击的优秀工具。它虽然不能直接保护系统,但是它能间接的保护系统 安全。 蜜罐根据交互程度16还可分为低交互性蜜罐、中交互性蜜罐和高交互性蜜 罐。低交互性蜜罐通常只提供某些特定的模拟服务。在一种基本的形式中,这 些服务能够通过监听一个特定的端口实现。例如一个简单的netcat命令就可以 监听http80端口,并且将所有进入的网络流量记录到日志文件。这样所有进入 的网络流量能够很容易地被识别并予以保存。这种简单的方法不可能捕获复杂 的协议间的通信。一个外界发起的smtp握手连接不会提供多少有用的信息,因 为没有内部服务对它进行应答。在低交互性蜜罐中没有真实的操所系统让黑客 操作,这很大程度地减小了蜜罐的风险。而另一方面,这也是它的一个弊端, 它不能观察黑客与操作系统的交互,不能获得有用的价值。 中交互性蜜罐仍然没有提供真实的操作系统与黑客交互,但是却为黑客提 供了更多复杂的诱骗进程,模拟了更多更复杂的特定服务。复杂服务的增加, 加大了攻击者发现系统安全漏洞的可能性,同时也增加了使用蜜罐的风险。但 是中交互性蜜罐一般提供完善的日志系统来时刻监控着黑客行动,缓解了黑客 攻破蜜罐的威胁。中交互性蜜罐为攻击者提供一个更好的真实系统的幻影,蜜 罐学习攻击能力显著增强。实现中交互性蜜罐需要花费更多的时间精力,设计 者必须深刻理解各种网络协议以及服务的实现过程,这样才能保证虚拟进程的 真实性。蜜罐系统不应和真实系统一样具有难以控制的安全漏洞,而必须采取 专门的安全措施来控制并利用这些安全漏洞,这也是使用诱骗进程而非真实进 程的原因。 南京航空航天大学硕士学位论文 11 高交互性蜜罐有一个真实的底层操作系统,此类蜜罐复杂度和甜度大大增 加,收集攻击者信息的能力也大大增强,通过它可以发现新的黑客工具、识别 操作系统和应用程序中新的安全漏洞和弱点、甚至获得黑客之间的交流信息。 多数高交互性蜜罐放置于一个受控的环境中,例如在一个防火墙后面,防火墙 允许黑客攻击其中的蜜罐,但是不允许黑客用它来发起新的攻击。这种结构难 于部署和维护,因为必须不让黑客觉察到正在被监视。高交互性蜜罐的维护非 常地困难和耗时,必须经常更新防火墙规则和ids特征数据库,昼夜不停地对它 进行监视。伴随着高的复杂性的是高风险,任何一个失误都可能导致黑客对整 个操作系统的控制,用它来攻击其他的系统或者截获应用系统的信息。但是如 果能被恰当的维护,也会有高受益的。 2.1.3 蜜罐产品的介绍 目前,有很多新的商业和研究用途的蜜罐系统被研制出来。商业用途的蜜 罐系统相对推出的速度要快一些,而研究用途的免费蜜罐系统还是早些时候推 出的产品,总的来说有以下一些常用的蜜罐产品。 1.dtk dtk17是第一个公开发布的蜜罐,使用perl和c两种语言编写。其基本思想 使用欺骗来反击黑客,使黑客感觉到运行dtk的系统有着大量广为人知的漏洞。 dtk的欺骗是可编程的,它的特点就是在黑客输入的情况下产生输出,模拟输出 这个系统的漏洞,dtk仅仅监听输入并提供较为合理的应答。dtk的诱骗应答是 可编程的,通过状态机方式工作,实际上能够虚拟任何服务,并可方便地利用 其中的功能模块直接模仿许多服务程序。早期的dtk发布非常容易编译和安装, 但是随着版本不断升高,己逐渐变得难以配置。 dtk还有一个有趣的被称之为“欺骗端口”的概念,fred cohen提出如果一 个系统在tcp的365端口监听,就表明运行这个系统的机器是一个运行欺骗防御 的蜜罐系统,这样黑客为了避开欺骗防御就会首先检查出这样一个端口。cohen 说当dtk被广泛认知和使用时,最终一个仅仅包含简单的欺骗防御的监听端口系 统就能吓跑不少的黑客。 2bof bof18是一个简单但又十分实用的蜜罐,由nfr公司开发用来监控back orifice这一攻击工具。bof可以运行在windows 9x和nt系列的操作系统上。此 入侵诱骗系统中虚拟环境的设计与实现 12 外,在unix系统下bof也有相应的版本,bof是低交互蜜罐中较为出色的代表。 back orifice是一个较为常见的攻击工具,相当于一个远程系统管理工具。 具有查看文件、按键记录、设置网络文件共享、修改注册条目、激活web服务器 并放置供他人下载的文件、包括文件的复制等、重新启动机器或使系统崩溃、 用用户的机器查找其所在网络中的其他机器,并用back orifice对它们进行感 染等功能。 bof可以监控back orifice的这些攻击,且使用方式十分简便。bof所完成 的工作就是在特定端口监听并模仿一些基本的服务, 如http、 ftp、 telnet、 smtp、 pop3、 imap2等服务。bof还具有“伪造答复”功能,即为黑客提供一些伪造的 连接,通过bof可以记录http攻击、远程登录或者其他各种攻击行为,从而了解 何种类型的攻击行为正在发生。 3specter specter19是一个商业的低交互蜜罐,它类似于bof,主要功能是模拟服务, 不过它可以模拟的服务和功能范围更加广泛。除了可以模拟服务之外,specter 还可以模拟多种不同类型的操作系统。与bof类似,specter的操作也非常简单 并且风险很低,specter同样运行在windows系列操作系统上。由于与入侵者进 行交互的并不是真实的操作系统,所以风险就降得很低。例如specter可以通过 其有限的模拟功能模拟指定操作系统的web服务或远程登录服务。当黑客进行连 接的时候,specter就会激活一个http头或登录标识,接下来黑客如果尝试获得 web网页或登录到系统中,其行为就会被specter捕获并记录。specter支持多种 告警和记录机制。因为事实上并没有真正的应用程序与黑客进行交互,所以黑 客不可能对系统进行深层次的入侵。 specter的特性之一是它还可以进行双向信息采集,对于需要采集的信息除 了可以被动收集外,specter甚至可以通过whois查询主动调查入侵者,获取 finger信息,通过traceroute发现其入侵源,进而进行反端口扫描。 specter由引擎部分和控制部分两部分组成。引擎部分进行数据包嗅探并对 各种网络连接进行处理,而控制部分则提供图形用户界面供使用者进行各项配 置,所有的配置都可以在一个界面内完成。 目前,specter系统可以模拟9类操作系统(windows nt,windows 95/98, macos, linux, sunos/solaris, digital unix, nextstep, irix和unisys unix)。 根据模拟的不同类型操作系统,specter还可以提供不同格式的伪造口令文件。 南京航空航天大学硕士学位论文 13 specter可以将模拟主机的安全程度设为5种级别open(不设防)、secure(安 全)、failing(软硬件都有问题)、strange(不可预知)和aggressive(收集攻击 者信息并发出通知)。 specter可以模拟4种不同的网络服务(smtp, ftp, telnet和finger)和7种 traps(特定端口的连接, 比如dns、 http、 sun-rpc、 pop、 imap4和back orifice)。 所有连接的记录都具有远程主机的ip地址、确切时间、服务类型和连接建立时 引擎的状态等信息。另外,specter还提供一个用户自定义trap,用户可以指定 进行监控的端口。控制部分的图形用户界面上有一个实时状态窗口,用于在告 警发生时提供简短信息。如果想获得更加详细的信息,可以通过电子邮件接收 或者查看硬盘记录。 4. mantrap 赛门铁克公司的mantrap20是一个商业蜜罐,运行于solaris系统上。除了 可以模拟服务之外,mantrap还可以创建4个子系统,通常称为“牢笼”。这些 “牢笼”是在逻辑上离散的并且与主操作系统分离的操作系统。安全管理人员 可以像修改任何普通操作系统那样对这些“牢笼”进行修改,包括根据自己的 需要安装各种应用软件,比如office,oracle或apache等。这些特性使mantrap 显得非常灵活,可以完成多种多样的工作。黑客可以与整个“牢笼”系统进行 交互,还可以对各种各样的应用程序进行攻击,当然所有这些行为也都可以被 捕获并记录下来。安全管理人员通过mantrap不仅可以检测端口扫描和远程登录 攻击,还可以捕获rootkit、应用层攻击、irc聊天对话和其他各种攻击。 然而, 可以了解的信息越多出现问题的可能性就越大。 mantrap一旦被攻破, 入侵者就可以运用其所有功能对其他系统进行攻击,所以必须小心谨慎地使用 mantrap,将其安全风险降至最低。通过合理的使用,mantrap既可用作对入侵 进行检测和响应的工具,也可作为对各种入侵威胁进行研究的平台。 5.honeyd honeyd21最初发布于2002年4月,它基于unix平台设计,源码开放,是一种 交互的应用型蜜罐,用于检测攻击和非授权行为,可以进行定制来监听任何端 口。最初发布的版本可以模拟5种不同的服务,这些模拟服务用来欺骗黑客并捕 获他们的行为。 honeyd不检测指向它自身ip地址的攻击,相反,它检测对非有效系统的ip 地址的攻击。当检测到对非有效系统的连接企图时,它会接受这个连接,假扮 入侵诱骗系统中虚拟环境的设计与实现 14 为该系统与黑客交互。honeyd可以监视指向数百万个不存在有效系统的ip地址 的连接,主动与成千上万个黑客交互。honeyd可以监视一个不存在有效系统的 大型网络。和specter一样,honeyd也能够模拟多种不同的操作系统。另外, honeyd可以模拟473种不同类型和版本的操作系统。 bof只是一个非常简单的解决方案,可以说是一个提供有限服务和有限记录 功能的小玩具, 但是很容易安装, 观察它的表现也很有趣。 特别是那些使用modem 或者拨号的用户,他们会发现大量的攻击,因为这些网络很容易被诸如back orifice这样的工具扫描。 specter容易安装,具有良好的图形用户界面,并且能够有效地降低网络风 险。但是它的价格非常昂贵,需要真正的操作系统。 mantrap、dtk都具有较高的可配置性,它们的价值和风险一样的高。因此 除了获取这些蜜罐系统所花的费用之外,平时的维护费用也是非常之高的。 mantrap最大的优势就是拥有图形用户界面,容易配置、分析和管理。 2.1.4 蜜罐系统平台的选择 对操作系统的选择主要是基于系统使用目标和软件应用难度来决定的。对 于虚拟蜜罐22而言,它需要在已有的操作系统基础上,安装特殊的客户级程序来 虚拟一些特定系统的功能,从外部来看只有虚拟程序是可见的,操作系统对于 攻击者是透明的。对于不使用虚拟机制的蜜罐系统来说,其安装和配置对于任 何操作系统都是可行的,没有任何限制。但是同一台计算机上同时只能运行一 种操作系统,对计算机资源的有效利用率不高。 而虚拟蜜罐的实现是基于原操作系统和虚拟技术,附加的操作系统可以实 现很多的功能,能够在一个宿主操作系统上并行安装多个虚拟操作系统,这些 虚拟操作系统可以是不同种类的。如果虚拟的客户机遭到了攻击者的破坏,要 重装虚拟机是非常容易的,很多客户机是基于宿主操作系统上的一个单独的文 件,要对它进行备份是非常容易实现的,仅仅需要把这个文件放大一个备份介 质上,然后当需要恢复的时候把它们从备份介质上覆盖回去就可以了。 虚拟蜜罐系统的最大问题是虚拟的真实性和健壮性。攻击者可能会通过一 些很基本的方法来探测到虚拟系统的存在,然后他们就可能绕开虚拟的系统而 去攻击真实的宿主操作系统。但是这些特性也可以不看成是一种缺点。因为现 在越来越多的开始使用虚拟技术来提高他们的接入服务器的利用率,攻击者有 南京航空航天大学硕士学位论文 15 时自己都不能确定哪些是真实的操作系统哪些是用作蜜罐的虚拟操作系统,这 在很大程度上取决于虚拟系统的真实性 1windows操作系统 由于当前发现的攻击行为大量基于windows系列操作系统23,很对人在设计 蜜罐系统特别是为了数据捕获的时候会考虑windows操作系统。windows操作系 统主要分为2个大类:基于ms-dos如win95、win98 、winme等,还有就是基于nt 内核的如winnt、win2000、winx等。 按照传统的使用习惯,基于nt内核的系统主要应用在网络服务和商业应用 领域。而基于dos的操作系统主要应用于家用市场。通过windows2000和 windowsxp的推出,家用领域也可以使用基于nt内核的产品了。 windows操作系统最早发布于1992年,当时windowsnt系统支持进程、线程、 对称多处理器、分布计算和使用对象模型进行资源管理等先进技术。nt的系统 构架是综合了分层模式结构和客户/服务器结构的产物,分层结构是使用在程序 执行上的,它是windowsnt内核中唯一可执行构架。而后者提供给用户与多种操 作系统相通信的能力,例如:windows ms-dos, os/2, unix等。windows系统经 过多年的发展,在网络处理方面取得了很大的成功,同时针对windows系统的攻 击也愈来愈专业和多样化,现在有专门针对windows系统设计的病毒、蠕虫和木 马等攻击手段。 windows系统在世界上被广泛使用着,并且被发现有大量的安全漏洞,因此 windows系统变成了黑客社团们竞相攻击的目标。但是通过使用vmware等虚拟软 件和intel兼容pc机系统,windows可以成为一个比较理想的用于虚拟蜜罐系统 的操作系统环境,它不但可以作为一个宿主操作系统,还可以被做成虚拟系统 的对象。 2.unix操作系统 unix操作系统24最早被at cstring strtruedisk = _t (?:); int i = 0; int nsel = 0; 入侵诱骗系统中虚拟环境的设计与实现 36 for( i=0;i10;i+) strtruedisk.setat(0,ucturediski); if( 0 = strtruedisk.compare(_t(pszdrive) nsel = i; break; *ppszdrive = pszdrive; if(i 10) (*ppszdrive).setat(0,ucmapdisknsel); void cdriveview:unmapdriveitem(lpctstr pszdrive, cstring* ppszdrive) cstring str; cstring strtruedisk = _t (?:); int i = 0; int nsel = 0; for( i=0;i10;i+) strtruedisk.setat(0,ucmapdiski); if( 0 = strtruedisk.compare(_t(pszdrive) nsel = i; break; *ppszdrive = pszdrive; if(i 10) 南京航空航天大学硕士学位论文 37 (*ppszdrive).setat(0,ucturedisknsel); 为了实现对真实系统的某些分区进行屏蔽的功能,在虚拟文件系统中通 过分区掩码实现了该功能。 核心部分代码如下: dword cdriveview:hidedisk(dword truedisklist) dword tempdisklist; int i=0,j=0; tempdisklist = truedisklist; while(truedisklist) /*当该分区真实存在时,判断屏蔽位是否为 1,为 1 则屏蔽该分区; 当该分区不存在时,直接屏蔽该分区*/ if(truedisklist i+; else tempdisklist = tempdisklist j+; return tempdisklist; 入侵诱骗系统中虚拟环境的设计与实现 38 4.3.4 文件运行限制功能的实现 windows 系统的文件运行限制操作是通过用 setwindowshookex 来设置钩子 函数,在钩子函数里面直接返回,不执行任何操作实现的。 4.3.5 文件删除复制功能的实现 windows 系统的文件修改、删除操作是通过用 setwindowshookex 设置钩子

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论