1、摘 要基于神经网络的云计算入侵检测系统是云计算的一个重要研究领域。本论文针对云计算环境中的入侵检测问题,在总结传统入侵检测技术的基础上,对云计算环境中的入侵检测系统进行了比较全面的研究,为云计算环境中的入侵检测提供了新颖的解决方案。具体而言,本论文的主要研究工作如下:首先,综述了有关云计算和入侵检测系统的基本理论,包括云计算的概念涵义、关键特征、服务模型、部署模型与入侵检测系统的定义、原理、分类、流程等,为后续基于神经网络的云计算入侵检测系统研究奠定基础;其次,研究了云计算入侵检测过程中的关键技术,包括云计算环境中的网络数据捕获技术、网络数据分析技术和入侵行为检测技术。其中,深入探讨了云计算环
2、境中不同层次(包括接入控制、网络、系统等)上的多种数据捕获技术与不同平台(包括Windows、Linux和Unix等)下的网络数据捕获技术,以及云计算环境下的两种入侵行为检测(包括特征检测和异常检测)技术;最后,开发了一个基于神经网络的云计算入侵检测原型系统(CloudIDS),并介绍了CloudIDS的总体架构、工作原理和功能模块;在此基础上,详细阐述了CloudIDS的三个核心模块(网络数据捕获、行为规则匹配和神经网络判别)的具体实现,最后通过实验验证了CloudIDS的入侵检测效果。关键词:云计算;入侵检测;神经网络;数据挖掘。IIIAbstractNeural network-base
3、d intrusion detection system in cloud environment is an important research field for cloud computing. Regarding the intrusion detection problem in cloud environment, this thesis conducts a comprehensive study on the intrusion detection system of cloud computing based on the survey of traditional int
4、rusion detection technologies, and provides a novel resolution for the intrusion detection of cloud computing. Specially, the main works of this thesis are as follows:First, the fundamental knowledge of cloud computing and intrusion detection system are reviewed, including the concept, key features,
5、 service models, deployment models of cloud computing and the definition, principle, classification, process of intrusion detection, which provides a foundation for the following study of neural network-based cloud computing intrusion detection system.Second, the key technologies such as network pac
6、kage collection, network data analysis and intrusion behavior detection are explored. Herein, this thesis studies in detail the data collection technologies in different level of cloud computing architecture (e.g., network, host, and application) and network package snatching technologies in differe
7、nt platform (e.g., Windows, Linux and UNIX), and two kinds of intrusion detection technologies (e.g., misuse detection and anomaly detection) in cloud environment.Finally, a neural network-based intrusion detection prototype system for cloud computing (i.e. Cloud IDS) is developed, and its overall a
8、rchitecture, work principle and function modules are introduced. Furthermore, the specific implement of three core modules (e.g., network data collection, behavior rule matching and neural network identification) are described in details, and the effectiveness of CloudIDS is validated with several e
9、xperiments.Keywords: Cloud computing; Intrusion detection; neural network; data mining.目 录目录摘 要IABSTRACTII第一章 绪论11.1 研究背景11.1.1 云计算环境面临的安全风险11.1.2 云计算入侵检测的研究意义41.2 国内外研究现状及发展趋势51.2.1 云计算的研究现状及发展趋势51.2.2 入侵检测研究现状及发展趋势61.3 论文的研究内容与组织结构71.4 本章小结8第二章 云计算与入侵检测概述92.1 云计算概述92.1.1 云计算的概念介绍92.1.2 云计算的关键特征102
10、.1.3 云计算的服务模型102.1.4 云计算的部署模型112.2 入侵检测概述122.2.1 入侵检测系统的定义122.2.2 入侵检测系统的分类142.2.3 入侵攻击的主要形式162.2.4 入侵检测的工作流程202.3 云计算的入侵检测212.3.1 云服务模型和入侵检测212.3.2 云计算的入侵检测实施222.4 本章小结23第三章 云计算入侵检测关键技术243.1 云计算数据捕获技术243.1.1 云计算数据捕获的主要类型243.1.2 不同层次上的行为数据捕获253.2 云计算数据分析技术283.2.1 数据分析的数学方法283.2.2 数据分析的智能方法293.3 云计算入
11、侵检测技术313.3.1 基于知识的检测技术313.3.2 基于行为的检测技术323.4 本章小结33第四章 云计算入侵检测原型系统344.1 CloudIDS系统概述344.2 网络数据捕获模块354.2.1 数据捕获模块接口354.2.2 数据捕获模块实现384.3 行为规则匹配模块434.3.1 行为规则的描述444.3.2 行为规则的匹配444.4 神经网络判别模块484.5 实验分析504.6 本章小结52第五章 结论与展望535.1 论文主要工作535.2 后期工作展望53致 谢54参考文献55作者在攻读硕士期间主要研究成果57第一章 绪论第一章 绪论1.1 研究背景云计算(clo
12、ud computing)一词最早诞生于2006年,是并行计算(parallel computing)、分布式计算(distributed computing)、网格计算(grid computing)、效用计算(utility computing)等计算模式与网络存储(network storage)、虚拟化(virtualization)、负载均衡(load balance)等信息技术综合发展的结果1。云计算的核心思想,是将大量网络连接的计算资源统一管理和调度,构成一个虚拟计算资源池向用户按需提供基础设施、平台和软件等服务。这个提供资源的网络称为“云”。作为一种基于互联网的超级计算模式,云
13、计算允许用户动态共享大规模的软硬件资源及信息,并按实际使用收取费用2。云计算以互联网作为通信支撑平台,而互联网是一个开放性、异构性极大的公共网络,使得运行于互联网上的云计算服务面临着各种各样的安全威胁,例如数据信息被截取篡改删除、合法用户或服务被冒用等41。特别是云计算服务供应商,在为云计算用户提供计算、存储和各种应用软件等服务的过程中,经常会遭受各种安全威胁攻击的考验34。因此,需要研究有效的安全防护措施,以确保云计算环境的稳定运行。1.1.1 云计算环境面临的安全风险2010年3月,云安全联盟(Cloud Security Aliance,简记为CSA)在总结云计算存在的安全问题基础上,发
14、布了Top Threats to Cloud Computing技术白皮书37。CSA在这份白皮书中,给出了云计算存在的七大安全风险:1.云的不良使用;2.不安全的API;3.恶意内部人员;4.共享技术问题;5.数据丢失或泄漏;6.帐号及服务劫持;7.未知安全风险。1云的不良使用云计算服务供应商对用户访问登记程序管理不严,任何持有有效信用卡的人都可注册并使用云计算服务。由于注册云计算服务时,不进行身份认证,因此网络入侵者可以轻而易举地利用云计算服务进行网络攻击或发送恶意软件,从而造成云计算能力的滥用,带来巨大的安全威胁。2不安全的API云计算服务的开发离不开API接口的使用,同时用户也主要通过
15、API接口交互和管理所需的云计算服务。因此,云计算服务的安全性在很大程度上决定于API接口的安全性。如果这些API接口实现地不够规范和安全,将会为相应的云计算环境带来严重的安全隐患。3恶意的内部人员云计算环境的内部工作人员是云计算服务和数据的最接近者。如果云计算服务供应商对自己的内部工作人员缺少严格的管控程序和制度,内部工作人员的安全风险就会加剧,就会对存储于云计算服务供应商处的用户重要数据和业务应用增加人员方面的安全风险。4共享技术的问题传统计算基础设施中的技术和产品难以在多用户架构中提供强有力的隔离保障。通常,云计算服务供应商使用虚拟化技术来解决云计算基础设施环境的多租户需求问题。但是,包
16、括虚拟化在内的众多基础设施构建技术均存在物理共享和安全漏洞的风险,对云计算基础设施的安全性带来挑战。5数据丢失或泄漏数据中心是提供云计算服务的一个重要而基础的组成部分。用户的各种数据(包括许多重要敏感数据)通过网络在云计算环境中进行传输和处理,并最后存放于云计算的数据中心。如果包括数据中心在内的整个云计算环境没有有效的数据安全存储和访问控制等措施,就很容易造成用户数据的丢失或泄漏。6帐户或服务劫持云计算环境中存在大量的合法用户身份信息。如果网络入侵者通过非法手段获得了合法用户的证书帐号,那么网络入侵者就可以窃取或伪造合法用户数据信息,假冒合法用户进行非法交易甚至网络犯罪活动。这不仅会给合法用户
17、带来巨大的云计算服务费用,甚至会给合法用户的人身信誉及自由带来困扰。7未知的安全风险除上述主要安全风险外,云计算还存在其它的未知安全风险,例如传统的物理、网络、主机、数据和应用安全风险,潜在的安全漏洞风险,不科学的安全规划设计、不完善的安全审计机制等等,都会对云计算环境的安全稳定带来安全威胁。不规范的云计算环境构建和部署,都可能会导致日后未知的安全风险。另外,针对云计算存在的安全问题,全球最具权威的IT研究与顾问咨询公司Gartner进行了广泛调研。以下是Gartner经过分析后,总结出来的七种云计算安全风险及相关建议39。1特权访问风险一般而言,多数用户数据都具有机密性。当用户将自己的数据交
18、给云计算服务供应商后,云计算服务供应商就拥有了比用户更优先的数据访问权。此时,用户数据就面临着云计算服务供应商无意或有意的泄漏风险。Gartner为此向用户建议,在选择使用云计算服务之前,应要求云计算服务供应商提供其业务数据管理人员的相关信息,以把数据泄露风险降至最低。2法规遵从风险即使将自己的数据托管给云计算服务供应商,用户仍然是自己数据完整性和安全性的最终责任人。传统的服务供应商需要通过第三方审计和安全认证的审查,用户才可放心地将自己的数据交给云计算服务供应商。Gartner为此向用户建议,如果云计算服务供应商拒绝接受第三方审计和安全认证,则用户不能过多采用这些云计算服务供应商的服务。3数
19、据场所风险在用户选择云计算服务后,将无法控制自己数据的具体存放位置。用户数据将跑出自己的安全边界之外,甚至可能会被存放于国外服务器上。为保证自己的数据安全,用户需要确保云计算服务供应商是否遵循数据所在地的数据隐私保护要求。Gartner为此向用户建议,用户需要了解云计算服务供应商存储数据的场所,并能否提供保护用户数据隐私和安全的相关协议。4数据隔离风险使用云计算服务的众多用户数据通常集中存放于数据中心,这就带来了用户数据被越界访问的威胁。尽管加密是一种有效的数据保护技术,但是并不能百分百地保证数据的安全,同时还会影响数据的可用性和使用效率,因为加密数据一旦发生意外,将有可能彻底不能使用。Gar
20、tner为此向用户建议,对于处于共享环境的众多用户数据,需要更加有效的加密服务和隔离机制。5时限恢复风险与传统计算环境一样,云计算环境中的数据同样面临着火灾、洪水、地震和人为等各种形式的灾难问题。如果云计算环境不具备有效的数据备份和灾难恢复机制,则当出现重大事故时,用户数据有可能无法得到恢复。Gartner为此向用户建议,用户不但需要了解云计算服务供应商是否具有完备的数据备份和灾难恢复方案,还应明确云计算服务供应商的数据恢复时长。6调查支持风险对于用户而言,无论是进行合法还是违法的调查活动,云计算服务供应商通常都不会提供相应配合,因为云计算数据中心存放有众多用户的数据,对云计算数据中心的查询可
21、能会造成其他用户数据的泄漏。因此,一旦用户需要调查自己的数据或业务时,则该用户的需求可能无法得到满足。Gartner为此向用户建议,在采用云计算服务时应当考虑到这一点。7长期发展风险任何服务供应商都不能保证其云计算平台能够永远安全稳定地提供服务。因此,用户一旦选择了某家云计算服务供应商,就会面临着该服务供应商出现破产或被其它大型公司收购的可能性。此时,用户的现有服务就有可能会被中断或受到严重影响。Gartner为此向用户建议,在选择云计算服务供应商之前,用户应把长期发展风险因素考虑在内。根据CSA联盟和Gartner公司两个权威组织的调研报告可以看到,云计算并非生来就完美无缺的,其应用是存在缺
22、陷和安全风险的,因此必须正视云计算应用所带来的安全风险。下面从用户、服务供应商和政府三者的角度分析云计算环境下各自需要面对的安全风险。1用户所要面对的安全风险云计算用户所要面对的安全风险包括:宕机对用户的信任打击难以承受,但是云计算无法保证不会宕机;商业机密泄漏是所有用户(包括企业和个人)的噩梦,但是云计算无法保证不会泄密;选择一家云计算服务供应商后,如何面对云计算服务供应商的强势地位,包括故障排除、损失赔偿、业务迁移等问题。2服务提供商面对的安全风险云计算服务供应商面对的安全风险包括:对自身而言,大规模数据中心是一个复杂系统,如何保证云计算数据中心长时间安全运行、隔离故障并将影响降到最低程度
23、都是必须面对的安全问题;对外部入侵而言,如何应对数量众多且野心勃勃的网络黑客是一个非常头疼的问题;对众口难调的用户而言,如何对他们进行有效的安全管理、以及如何鉴别和屏蔽恶意用户也是一项必须做好的工作。3政府所要面对的云计算安全风险政府所要面对的云计算安全风险包括:数据是商业基础,如何加强大规模数据中心安全防护应该是政府所需考虑的安保问题;防止政府机密泄漏是政府云的建设重点;如何加强对数量众多、规模不一的云服务供应商进行安全管理是一个重要问题;如何对云服务供应商的安全资质、用户的安全信誉进行评级,并发布恶意程序预警,都是政府需要着手去做的事情。1.1.2 云计算入侵检测的研究意义随着云计算成为全
24、球新兴产业的重要代表,网络入侵者都将目光投到了云计算这一未来充满巨大市场空间的领域。由于云计算环境拥有强大的计算能力、海量的存储空间和丰富的用户信息,对网络入侵者具有很大的诱惑力,云计算环境目前已经成为网络入侵者的攻击目标。特别是作为云计算服务供应商,在为云计算用户提供计算、存储和各种软件式服务的过程中,很容易遭受各种安全威胁与攻击的考验。同时,云计算环境下的网络攻击发动更加快速、攻击能力更加强大、攻击后果更加严重,使得云计算环境的入侵检测变得更加重要。云计算的本质是利用虚拟化技术实现各种资源(无论计算资源还是存储资源)的统计复用,提供开放的应用接口以供用户按需使用众多资源。随着云计算的技术架
25、构和服务模式变得日益丰富,网络入侵者攻击手段的隐蔽性和破坏性也开始变得越来越强。与传统计算环境相比,云计算环境具有虚拟化、分布式和超大规模等特点,为云计算环境下的入侵检测提出了更高的要求和挑战。传统的入侵检测系统不再适应云计算环境的虚拟化、分布式和超大规模等特点,已经不能胜任云计算环境下日趋强大和更加隐蔽的网络入侵检测。研究适应于虚拟化、分布式和超大规模网络环境的新型入侵检测系统,实现云计算环境的有效安全防护成为云计算安全领域研究者亟需解决的一个问题。目前,围绕云计算入侵检测的研究工作还不是很多,还没有非常有效的云计算入侵检测系统产品出现,迫切需要开展云计算入侵检测系统方面的研究,以实现安全可
26、信的云计算环境,为云计算产业的健康发展和普及应用提供技术支撑。本论文将针对云计算环境下的入侵检测系统进行全面深入的研究,具有较强的学术和实践价值。1.2 国内外研究现状及发展趋势作为一个新兴的研究领域,云计算安全尤其是云计算入侵检测问题一直都是阻碍云计算健康快速发展的障碍之一。目前,这方面的研究工作还不是很多,还需要从基础理论和工程技术两个层面进行深入的研究。1.2.1 云计算的研究现状及发展趋势业界认为,云计算是继个人计算机、互联网之后信息产业的第三次变革,将对社会信息化发展产生深远影响。云计算的兴起,一方面是高速互联网连接和虚拟化等技术发展的结果,另一方面也是互联网发展需要不断丰富其应用趋
27、势的体现。目前,国内外学术界和产业界都围绕云计算展开了广泛的研究。例如,美国许多高校都成立了专门的云计算及其安全研究小组,包括著名的加州大学Berkeley和Los Angeles分校、MIT、Cornell大学等都在从事云计算方面的研究工作33,36;IBM于2007年8月高调推出“蓝云(Blue Cloud)”计划,并宣称云计算将是IBM接下来的一个重点业务43;Google于2007年10月在全球宣布云计划,与IBM展开合作要把全球多所大学纳入“云计算”中;Amazon于2007年向开发者开放了名为“弹性计算云(Elastic Compute Cloud,简记为EC2)”的服务30,允许
28、中小企业可以按需购买Amazon数据中心的处理能力;Yahoo也于同年11月提供了一个小规模的服务器云,面向CMU的研究人员;同时,HP、Intel和Yahoo三家公司联合建立了一系列数据中心以推广云计算服务。到目前为止,VMware已经推出了云操作系统vSphere、云服务目录构件vCloud Director、云资源审批管理模块vCloud Request Manager和云服务计费vCenter Chargeback31。2009年,云计算成为业界内谈论改变市场低迷状况最有效的经济模式之一。其认知度从2008年的一成,飙升至2009年的五成;凭借众多的优势,几乎无人质疑云计算的发展前景。
29、与此同时,2009年的云计算虽然在应用上未能得到有效提升,但是已经开始纳入众多企业决策者的规划之中。据调查,五成以上的企业表示,在未来13年会有实施计划。在国内,Google全球于2008年3月17日宣布在中国大陆推出“云计算”计划,并与清华大学合作开设“大规模数据处理”课程3,6。IBM于2008年初与无锡市政府合作建立了无锡软件园云计算中心,开始了云计算在中国的商业应用5。2008年7月份瑞星推出了“云安全”计划4。如果说2009年之前我国云计算基本上还处于概念引入阶段,那么2009年之后我国云计算开始进入实质发展阶段。2009年,VMware在中国召开的vForum用户大会,第一次将开放
30、云计算的概念带入中国。阿里巴巴集团旗下子公司阿里软件与江苏省南京市政府签订2009年战略合作框架协议,于2009年初在南京建立国内首个“电子商务云计算中心”,首期投资额高达上亿元人民币4。中国电子学会云计算专委会于2009、2010和2011年连续举办了三届云计算大会。2010年10月18日发布国务院关于加快培育和发展战略性新兴产业的决定中,将云计算定位于“十二五”战略性新兴产业之一。1.2.2 入侵检测研究现状及发展趋势针对入侵检测系统,国内外学术界和产业界展开了广泛而深入的研究,最早始于上个世纪80年代。在学术领域,1980年4月,James P. Anderson为美国空军做了一份题为“
31、计算机安全威胁监控与监视(Computer Security Threat Monitoring and Surveillance)”的技术报告,这份报告被公认为入侵检测的开山之作9。1986年,W.T.Tener在IBM主机上用COBOL开发了Discovery系统,成为基于主机的入侵检测系统最早雏形之一。1987年,乔治敦大学的Dorothy E. Denning提出了入侵检测系统的一个实时抽象模型-入侵检测专家系统(Intrusion Detection Expert System,简记为IDES),首次将入侵检测用于解决计算机系统安全防护8。为了提高众多系统的互操作性和重用性,DARP
32、A提出了通用入侵检测框架(The Common Intrusion Detection Framework,简记为CIDF),该框架已成为通用标准12;Rajasegarar等提出一种基于传感器的分布式入侵检测方案,其中叶子结点用于采集数据,基站结点用于异常检测11;Siaterlis等使用D-S证据理论进行传感器数据的信息融合来实现分布式环境下的入侵检测14;Servin等提出一种分布式增强学习算法来进行分层传感器代理网络中的入侵检测15;Zanero通过网络协议和数据分析,利用自组织特征映射网络建立正常行为模型实现网络环境的入侵检测27.对比国外,国内学者谷雨等利用主成分分析(Princi
33、pal Component Analysis,简记为PCA)和独立成分分析(Independent Component Analysis,简记为ICA)进行特征降维,并将支持向量机(Support Vector Machine,简记为SVM)算法引入入侵检测,基于公式1.1设计了一种增量式入侵检测系统16,17。刘衍珩等利用各自独立的基于Hebb规则类神经网络对分成小块的海量数据进行学习,实现了海量网络行为数据的分割检测10;魏宇欣等对网格环境中的入侵检测系统进行了相关研究,并提出了包含数据采集引擎、数据分析引擎、关联分析引擎和调度引擎等功能模块的入侵检测系统架构23。此系统采用了BP神经网络
34、对采集的网络行为数据进行分类,具有较好的检测效果;熊焰等针对分布式网络中的入侵检测问题,提出了一种基于移动代理的入侵检测系统19。利用众多移动代理之间的交互与合作,该系统能够动态地实现分布式网络环境入侵行为的判别。李辉综合运用信息融合和多传感器集成技术,提出了一个多层次的入侵检测系统推理框架和原型系统17。在获取整个网络环境的全局状态后,通过将可疑主体行为与正常主体行为特征规则库进行模式匹配,采用统计建模分析方法进行异常主体行为的判断来实现入侵检测。在产业领域,1988年,Morris Internet“蠕虫事件”使得Internet多日无法使用,而促使更多的人投入入侵检测系统研究之中19。同
35、年,开发出了用于协助大型主机系统安全防护的Haystack和MIDAS系统。1990年,加州大学戴维斯分校的L.T.Heberlein等人提出了基于网络的入侵检测概念。在随后的五年时间里,众多基于网络的入侵监测系统被陆续开发出来。同时,Forrest等人将免疫原理引入到分布式入侵检测领域,而Ross Anderson和Abida Khattak开始将信息检索技术运用到入侵检测中。当前,基于主机的入侵检测系统产品主要有Intrusion Detection公司的Kane Security Monitor、Trusted Information System公司的stalker等,基于网络的入侵检
36、测系统产品主要有Axent公司的NetProwler、ISS公司的Realsecure和Cisco公司的NetRanger。总体而言,围绕云计算安全相关的研究成果还很少,针对云计算入侵检测的研究更是处于起步阶段。1.3 论文的研究内容与组织结构本论文围绕基于神经网络的云计算入侵检测系统展开了一系列的研究工作。具体内容如下:1.通过跟踪云计算的概念涵义、关键特征、服务模型、部署模型与入侵检测系统的定义、分类、流程等,综述了有关云计算和入侵检测系统的基本知识,为后续基于神经网络的云计算入侵检测原型系统的开发奠定了理论基础;2.针对云计算入侵检测过程中的三大关键技术,即云计算环境下的网络数据捕获技术
37、、网络数据分析技术和入侵行为检测技术,尤其是云计算环境中不同层次(包括接入控制、网络、系统等)上的多种数据捕获技术与不同平台(包括Windows、Linux和Unix等)下的网络数据捕获技术,以及云计算环境下的特征检测和异常检测两种入侵检测方法,进行了全面深入地研究,为实现云计算的入侵检测明确了技术路线;3.基于前面的理论研究和技术探讨,开发了一个基于神经网络的云计算入侵检测原型系统(CloudIDS),详细介绍了CloudIDS系统的总体架构、工作原理和功能模块以及CloudIDS系统三个核心模块(网络数据捕获、行为规则匹配和神经网络判别)的具体实现代码,并通过实验验证了CloudIDS系统
38、的效率。本论文的章节组织结构如下:第一章是绪论,首先阐明了本论文的研究背景,包括云计算的发展历史、所面临的安全风险以及云计算环境下入侵检测研究的意义;然后跟踪了目前国内外对云计算和入侵检测的研究现状;最后总结了本论文的主要研究内容和组织结构。第二章是云计算与入侵检测概述,首先阐述了云计算的一些基础知识,包括云计算的概念涵义、关键特征、服务模型、部署模型以及核心技术等;然后介绍了入侵检测系统的一些基础知识,包括入侵检测系统的定义、分类、组成、流程等;最后分析了云计算环境下进行入侵检测防护面临的挑战。第三章是云计算入侵检测关键技术,论述了云计算环境下实现有效的入侵检测所需的主要关键技术,包括云计算
39、网络行为的监控、云计算行为规则的匹配、云计算网络数据的捕获、云计算神经网络模型的训练和云计算网络攻击行为的挖掘等,为云计算环境下入侵检测原型系统的开发奠定技术基础。第四章是云计算入侵检测原型系统,首先说明了本论文所开发的云计算入侵检测原型系统CloudIDS的系统实现原理以及总体架构,然后重点介绍了其中的两个核心模块:基于规则匹配的入侵行为告警模块和基于数据挖掘的异常行为发现模块,最后简单分析了所开发的CloudIDS原型系统的性能。第五章是总结与展望,总结本论文的主要研究工作和初步成果,并对后续研究工作和未来发展趋势进行展望。1.4 本章小结本章首先介绍了基于神经网络的云计算入侵检测系统的研
40、究背景,包括云计算环境面临的安全风险和云计算入侵检测的研究意义,然后跟踪了云计算及入侵检测当前国内外的研究现状及发展趋势,最后给出了本论文的研究内容和组织结构。55第二章 云计算与入侵检测概述第二章 云计算与入侵检测概述2.1 云计算概述云计算是一种计算模式,这种模式可以方便地按需访问一个可配置计算资源(例如网络、服务器、存储设备、应用程序及相应服务)的公共集。这些资源可以被迅速提供并发布,同时最小化管理成本以及云服务提供商的干涉。图2-1 云计算本质的形象说明作为一种基于互联网的超级计算模式,云计算允许用户动态共享大规模的软硬件资源及信息,并按实际使用收取费用,整个运行模式很像电网。从某种意
41、义上,云计算是一种革命性的举措,类似于电力从单台发电机转向了电厂集中供电。2.1.1 云计算的概念介绍尽管云计算的概念已经出现了好几年,但是对于什么是云计算业界内仍然存在很多的说法,没有形成统一的定义。美国国家标准技术研究所(NIST)发布的云计算规范中对云计算的定义得到了业界的广泛认可,其定义包括:1.五个关键特征;2.三个服务模型;3.三个部署模型42。如图2-3所示。图2-3 NIST的云计算定义模型2.1.2 云计算的关键特征根据美国国家标准技术研究所(NIST)的云计算定义模型,云计算应具备五大关键特征,分别如下:虚拟化资源“池”:云服务供应商的计算资源汇集到资源池中,使用多租户模型
42、,按用户需要将不同的物理和虚拟资源动态地分配或再分配给多个用户使用;宽带网络访问:云计算平台具备通过网络提供服务的能力,支持各种标准接入手段,包括各种瘦或胖客户端平台(例如移动电话、笔记本电脑、或PDA)。由于接入终端的数量巨大,云计算平台必须支持宽带网络访问;快速弹性架构:具有快速可伸缩性提供服务的能力。在一些场景中,所提供的服务可以自动、快速地横向扩展,即在某种条件下迅速释放、以及快速横向收缩。对于用户而言,这种能力用于使所提供的服务看起来好象是无限的,并且可以在任何时间购买任何数量;可度量的服务:云系统通过一种可计量的能力杠杆在某些抽象层上自动控制并优化资源以提供某种服务(例如存储、处理
43、、带宽以及活动用户帐号);按需自助服务:用户可以根据自身需求自动配置计算能力,例如服务器时间和网络存储,而且这些服务自动进行,无需与云服务提供商的服务人员交互。2.1.3 云计算的服务模型同样,在美国国家标准技术研究所(NIST)发布的云计算标准规范书中,明确了云计算的三种服务模型(Service Model),分别如下:图2-4 云计算的三层服务模型架构即服务(IaaS):向客户提供处理、存储、网络以及其他基础计算资源,客户可以在上运行任意软件,包括操作系统和应用程序。用户不管理或者控制底层的云基础架构,但是可以控制操作系统、存储、发布应用程序,以及可能限度的控制选择的网络组件(例如,防火墙
44、)。平台即服务(PaaS):客户使用云供应商支持的开发语言和工具,开发出应用程序,发布到云基础架构上。客户不管理或者控制底层的云基础架构,包括网络、服务器、操作系统或者存储设备,但是能控制发布应用程序和可能的应用程序运行环境配置。软件即服务(SaaS):客户所使用的服务商提供的应用程序运行在云基础设施上。这些应用程序可以通过各种各样的客户端设备所访问,通过瘦客户端界面像WEB浏览器(例如,基于WEB的电子邮件)。客户不管理或者控制底层的云基础架构,包括网络、服务器、操作系统、存储设备,甚至独立的应用程序机能,在可能异常的情况下,限制用户可配置的应用程序设置。2.1.4 云计算的部署模型云计算的
45、部署模型(deployment model)规定了云计算提供服务的基础设施的拥有者、管理者和使用者的相关信息,同时也为可能出现的云计算进行了类型的划分。具体而言,云计算的部署模型(或类型)如下图所示:图2-5 云计算的三种部署模型私有云(Private Cloud):云基础架构被一个组织独立地操作,可能被这个组织或者第三方机构所管理,可能存在于某种条件下或者无条件存在;社区云(Community Cloud):云基础架构被几个组织所共享,并且支持一个互相分享概念(例如任务、安全需求、策略和切合的决策)的特别的社区。可能被这些组织或者第三方机构所管理,可能存在于某种条件下或者无条件存在;公有云(
46、Public Cloud):云基础架构被做成一般公共或者一个大的工业群体所使用,被某个组织所拥有,并出售云服务;混合云(Hybrid Cloud):云基础架构是由两个或者两个以上的云组成,这些云保持着唯一的实体但是通过标准或者特有的技术结合在一起。这些技术使得数据或者应用程序具有可移植性(例如在云间进行负载平衡的Cloud Bursting技术)。2.2 入侵检测概述入侵检测是为保证计算机系统安全而设计与配置的一种能够及时发现并报告计算机系统中未经授权访问或异常现象的技术,是一种用于检测计算机网络和系统中违反安全策略行为的技术。与其它安全策略、安全技术相比,入侵检测是一种比较新的技术。尤其是在
47、国内,近几年才逐渐被人们重视。2.2.1 入侵检测系统的定义入侵检测(intrusion detection),顾名思义是对入侵行为的发觉。对于“入侵”一词,很多学者给出了各自的定义。早在上个世纪八十年代,James P. Anderson就对“威胁”和“入侵”进行了详细界定,认为“威胁”和“入侵”是一种未经授权地访问或篡改数据信息的恶意尝试,以到达控制或使目标系统不可用的意图。可以视为对“入侵”较早的一种描述;Heady从研究的角度给出了“入侵”的更严谨的定义,指出“入侵”是所有企图破坏目标系统或计算资源三个基本安全属性(即机密性、完整性和可用性)的行为;Smaha给出了六种常见的“入侵”行
48、为类型,包括试探攻击、伪装入侵、系统渗透、信息泄漏、拒绝服务攻击、恶意使用12。总体而言,入侵行为主要是指对系统资源的非授权使用,可以造成系统数据的丢失和破坏、系统拒绝对合法用户提供服务等危害;而入侵检测系统是指监视或者在可能的情况下,阻止入侵或者试图控制主机系统和网络资源的尝试的功能系统,其部署模式如图2-6所示。图2-6 入侵检测系统的部署模式之所以使用入侵检测系统,主要有如下理由15:1.为了保护业务数据的安全。在现今的Internet环境下,如果仅仅使用普通的密码和文件保护方式,很难比较有效的保障自己业务数据的安全性;2.为了保护主机系统的安全。对于保护数据安全而言,没有什么比保证主机系统的安全更重要了。想象