1、面向云环境的取证技术研究随着云计算技术的迅猛发展,云环境下的取证技术成为了当前的一个研究热点。与传统的数字取证技术不同,云取证所面对的系统结构更加复杂、数据规模更加巨大。就拿一个小规模的云来举例,假设该系统中有 2000 个节点,每个节点磁盘空间为 320GB,RAM为 2GB,则总的磁盘取证空间是 640TB、RAM 取证空间为 4TB,即使不考虑节点间操作系统及文件系统的不同,如此庞大的数据量是传统取证技术无法胜任的。因此,如何从云中获取完整可靠的证据数据是当前云取证研究的难点问题 【1】 。具体来说,云取证主要面临以下 4 大技术难题。1) 云中数据物理存放地点范围太大。云数据中心由成千
2、上万台拥有大容量存储设备的 PC 组成,云系统屏蔽了下层数据存储的实现细节,只对用户提供一个逻辑上单一的数据存放地址,因此,要想获得云中数据的物理存放地址并非易事 【2】 。 2) 云应用产生的逻辑上相关的数据可能被分散存放。云应用所产生的数据被统一存储在逻辑上连续的地址空间中,而这些数据的物理存放地址可能并不连续,甚至可能被分散在好几个不同的存储设备中。3) 待取证数据规模大,而真正与犯罪相关的信息很少。云中存储着海量数据,从如此大规模的数据中提取证据信息有如大海捞针。就以 IaaS 模型举例,一个虚拟机镜像小则几GB,大则几十至几百 GB,而存储在这些镜像中的关键证据信息可能就只有几 KB
3、。 4) 云的弹性扩展机制要求取证能及时适应系统规模的变化,即实现弹性取证 【3】 。弹性扩展是云系统的关键特征,它能在云应用运行期间实现支撑云应用的虚拟机实例个数的动态增加或者减少。当虚拟机实例个数减少时,若不能及时提取出残留在该虚拟机实例中的证据信息,则这些证据信息很可能会丢失,且难以恢复 【4】 。与传统的数字取证技术相比,云取证技术面临的挑战主要包括 2 个方面。首先,没有成熟的云取证工具供调查人员使用,云取证活动主要依靠调查人员掌握的传统的取证技术及相关经验,若调查人员操作不当很可能会破坏原始证据信息,从而导致取证失败。其次,证据信息的获取难度及方法会随着云服务模型及部署模型的不同而
4、不同 【5】 。例如,相对于公有云而言,私有云架构更加清晰、云数据的存放节点地点固定,因此私有云模式下的取证难度远小于公有云;相对于软件即服务 (SaaS, soft-ware as a service)模型而言,IaaS 模型能提供更多底层的数据供调查人员取证分析,因此 IaaS 模型下的取证难度会小于 SaaS 模型。 目前,国内外学者对于云取证的研究进行了初步性的探索:中国政法大学的李小恺等人主要研究了云计算环境下的计算机侦查取证问题 6,从云计算关键技术和特点出发,对计算机取证面临的问题进行了深入分析,并提出了相关对策;武鲁等人提出一种基于云的计算机取证系统的设计方案 7,主要是在分析
5、和研究云环境下的安全缺陷和安全威胁的前提下,利用传统电子取证技术解决云环境的安全问题,同时借助云计算具有的高性能计算能力来满足取证工作对于高性能计算的需求;厦门美亚的张超通过对云计算环境下面临安全问题深入分析,探讨了云计算环境下的调查取证与分析。Keyun 等人对 150 多位数字取证专家进行了采访,列举出了他们对云取证领域的一些关键问题的看法,如云取证技术面临着哪些挑战、带来了哪些机遇,有哪些有价值的研究方向等 【8】 。Birk 等人从技术的角度剖析了云取证所面临的技术难题 【5】 ,而 Reilly 等人则从法律的角度分析了云取证技术所面临的法律障碍 【9】 等等。以下将从在云取证的各个
6、方面来探讨当前的研究现状。证据识别在文献 10中,作者认为,由于云计算系统的攻击是无声无息的,因为特定于云的攻击并不一定会在节点的操作系统上留下痕迹,所以传统的 IDS 系统对于云计算系统是无效的。因此作者提出了将 IDS 放置在云计算架构中的上下文中的想法,并且提出了一个系统原型,即 the Grid and Cloud Computing Intrusion Detection System (GCCIDS)。针对不同类型的云服务,相应的解决方案也不相同。对于私有云,只需将 IDS 放置在服务端即可;而对于公有云则采用多层架构:用户端可以通过 IDS 监视可疑事件,并向服务商报告,服务端通
7、过IDS 监视基础架构,以发现针对于多数用户的大规模攻击。以下是 GCCIDS 的原型架构,该系统中包含一个审计模块。其中,Node:提供服务的资源节点;Service:提供各种服务,以便于各个组件之间进行通信;Event Auditor 事件审计器是该系统的关键模块,它从不同的资源中抓取数据,例如日志系统,服务和节点信息等以此来监听各种事件;Storage Service: 保存用于 IDS Service 分析的数据。IDS Service 提供两种方法来进行入侵Analyzer and Alert System:基于行为和基于知识的分析系统。当发现可能的攻击时,通知其他的节点。在文献 【
8、11】 中,作者也同样提出了将 IDS 系统置入云架构中的方法,但针对性有所不同。作者认为,云架构的复杂性和用户的多样性导致了不同的的用户有不同的安全需求,特别对于用户来说,一个棘手的问题则是用户失去了对使用资源的整体控制。而对于 CSP 来说,提供给用户对所用资源的完全控制权是完全必要的,因为用户会根据需求的不同来对资源进行不一样的配置和使用。并且,为了关联和分析来自不同部分传过来的警告信息,一个中心管理单元必要的。此外 IDS 系统还必须具备一定的扩展性,以适应不同的环境,例如基于 VM 的环境和基于网络的环境.而且针对云架构的三个不同层次(应用层、平台层、系统层) ,会遇到不同地攻击,例
9、如,应用层:例如用户运行一个网站,攻击者可能会利用XSS(跨站攻击) ,用户可能通过注入 JS 脚本代码的方式来获取用户的信息等。针对上述问题,作者提出了一个可扩展的 IDS 管理架构,由一些传感器和一个管理中心组成。首先,在客户端和服务端都必须安装相应的 IDS,在客户端,需要安装与提供服务相隔离的 IDS,否则 IDS 在客户端被控制之后就会失去作用。并且用户需要根据自己的需求来对不同的应用来对 IDS 进行不同的配置。CSP 服务端:也需要安装相应的 IDS,并与所监视的对象隔离。因为它所提供的基础架构也可能遭致不同的攻击,这些攻击可能来自外部或者用户。其IDS 配置可能如下图所示:上图
10、由两个部分组成:一个 IDS 传感器虚拟机(IDS Sensor VMs)和 IDS 管理单元。系统通过 Event Gatherer 与安装在每个 VMs 中的 IDS 进行通信, Sensor 的警告信息传到管理中心,并统一格式化持久存储到数据库或文件中。然后又分析模块 Analysis Component 进行分析,然后以某种应对措施来通知 IDS Remote Controller ,对 VM 进行干预。并且通过 IDS Remote Controller ,用户可以配置自定义的的 IDS。 证据保全潜在证据的数据量问题(Storage Capacity)由于云计算的灵活性,例如用户的
11、按需付费,用户可能会需求无限制的数据存储能力。而这对于取证人员来说,也相应需要存储这些潜在的证据。这些数据怎么保全是一个比较棘手的问题。一个方案是把这些数据存储到云存储中心,但随之而来的问题便是如何保证这些证据的安全和隐私以及这些操作本身对证据的影响。而在为了减少数据里的问题上,在传统取证中有的人提出了分类(Triage)的技术,该方法允许调查人员能够专注于某一时期内最有价值的那部分证据的分析,而不是整个所有的证据。因此在云环境下,一个对应的模型被 Rogers 等人 12提出来,即 CFFTPM(The Computer Forensics Field Triage Process Mode
12、l) 。该模型的工作原理如下: 每个用户拥有独立的主目录(home directory) ,该目录下存放着该用户所有的应用数据,除了这些数据被当做证据之外,操作系统的注册表、系统日志、应用日志以及所有包含时间戳的数据都会当做证据。当然这个模型并不能直接应用在云这样的环境中,因为基于用户的应用数据可能在云端,也可能在客户端,或者两者皆有,这就需要取证人员进行在线取证。证据的保护在传统取证中,取证人员能够对可能包含证据的设备进行实际控制,而在云中,由于云服务的远程特性使得实际控制是非常困难的,除非调查人员能够获得某个服务的控制权,否则,潜在的证据很可能被用户或者云提供商破坏掉。而在如何获得云服务的
13、控制权以及可行性方面,很少人对这个有所研究或者说这种方法是不可行的。而为了防止证据的破坏,Delport 等人 13提出了将云实例隔离的方法,包括实例迁移,服务农场,地址重定位,热备份,安全沙箱等技术,他们对这些技术的优缺点分别进行了论述,然而它们都必须解决的问题是,对一个实例隔离时,来自该实例的数据可能会和其他实例共享存储并且可能不会存在于一个固定的位置,而且运行该实例的节点上可能还存在其他实例,如何保证其他的实例的可用性以及隐私是迫于解决的问题。证据的获取在云端数据中心,如何通过工具来抽取其中的证据也是一个挑战。传统的取证工具如EnCase 等工具大多数只对一般的电脑端进行证据检查,如何开
14、发出适用于云计算环境中的工具,是一个当前研究热点。Taylor 等人 14建议更新传统的取证工具,通过添加额外的功能来使其应用到云计算环境中。除此之外,由于证据来源的多样性,各种证据之间格式并不一样,如何设计一种有效的格式并被用于证据的分析也是一个研究的热点。在证据获取方式上,Lu 等人 15提出了一种概念 数据起源(Evidence Provenance) ,起源的意思就是对于一个实体,记录是谁创建了并且修改了他的内容以及对它的一些操作信息。显然这会给取证带来好处,当然这些起源信息必须保证是安全的,否则提供的信息将不可靠。Marty等人 16也提出一个类似的方法,就是 CSPs 和应用提供商
15、都应该提供日志数据来用于取证调查,这些日志数据包括业务日志,操作日志。错误日志、系统日志等。除此之外,由于云用户失去了对自己数据的实际控制,因为他们把数据处理交给了云服务中,然而这个可以通过由 Accorsi 提出的方法 -远程审计来解决 17。他认为这需要另外一种服务,BPaaS, (Business Process As a Service) ,该模型基于 SaaS 模型,提供业务处理的模型化、实例化、定制化以及执行化。显然这些审计信息会对取证带来一些方便。而在云客户端,OWADE【18】 宣称是第一个云取证工具,由斯坦福大学的 Elie Bursztein 教授于 2011 年在黑帽(B
16、lack Hat) 大会上提出。 Elie Bursztein 认为云服务的接入端应当包含有大量证据信息,因此他设计的 OWADE 工具主要用于用户端的证据提取。该工具目前仅支持 Windows 系统,能对主流的浏览器如 Chrome、Internet Explorer、Firefox 及 Safari 进行证据提取和分析,并能获得当前主流即时通讯软件如 Skype、Google Gtalk 及 MSN 的本地聊天记录。虽然该工具在用户端能提取到用户使用诸如 Skype 等云服务的证据信息,但是这些信息非常有限且很容易遭到犯罪分子的恶意破坏,因此还需与 CSP 端提取到的证据一起组成完整的证据
17、链。删除的数据用户在作案时可能会删除数据,如何恢复这些数据也是很有必要的,因为删除的数据中很可能包含重要的信息。在传统取证中,嫌疑人通过对物理存储介质的访问,删除证据数据,并且通过重写的方式来覆盖数据已达到不可恢复的目的。而在云计算中这种情况是有所改善。对于用户的数据,由于云计算的可靠性和健壮性,数据会有很多备份,当嫌疑人删除自己的数据时,其他备份的数据并不会删除,除非他获取了整个云计算的管理员权限。然而,有的服务提供商如 Google 为了用户的隐私,也会在用户删除自身数据的同时,一并将其他的备份数据删除掉,包括指向这些数据的指针也会被删掉,这样再来恢复这些数据就非常困难。在线取证在云环境中
18、,频繁使用的数据很可能也存在于非持久化介质如内存中。如何获取这些数据就是现在所说的在线取证。传统取证中,在线取证就是在一个电脑在未关机的情况下对内存、进程、网络活动、Web 缓存等易失性、临时性数据的获取。而在云计算中就是在不影响其他用户使用云服务的情况下来对这些数据的获取。Volatility 框架是一个用于传统取证的在线取证框架,它能将一些易失性、临时性数据收集起来作为证据,如何扩展现有的框架来将其应用到云中是一个值得研究方向。例如华中科技大学的周刚博士提出了一种以现场迁移技术为基础的云取证方法,该方法将虚拟机实例视为取证分析对象 【19】 。当有取证需求时,将待取证虚拟机实例迁移至本地,
19、在迁移过程中,对虚拟机实例的内存映射、网络连接等易失性数据进行了保全,然后将该虚拟机实例在本地进行加载,最后利用一些传统的取证工具在虚拟机实例中进行取证。该方法虽然能有效地从正常运行的虚拟机实例中获得证据数据,但当虚拟机实例被用户恶意破坏无法加载时,该方法就会失效。数字镜像的获取数字镜像的获取是基于调查人员在对操作对象处于实际控制的基础上来进行的,在传统取证中,调查人员比较容易控制目标实体,于是可以通过取证工具对存储设备中存储的数据按位拷贝,以便于随后的证据分析操作。相对于云环境,假设取证人员已经取得了云服务的控制权,然而由于云计算中虚拟化技术的应用,这让证据的获取更加困难。首先,在用户看来,
20、用户的数据会“统一”存在一个位置,而实际上,存储的虚拟化让取证人员并不知道其真正的物理位置,其次就算知道了物理位置,它也可能会和其他的用户的数据参杂在一起,这时如何鉴别其中的证据,并且在不侵犯别人隐私的情况下来获得这些数据也是一个问题。针对特定云平台的取证研究Zafarullah 等人针对开源云平台 Eucalyptus 环境下的取证技术进行了研究 【20】 。首先,他们在云系统内部部署了两台攻击源主机;然后,利用上述主机对云控制器(CLC, cloud controller) 节点发起 DoS/DDoS 攻击,耗尽 CLC 节点的 CPU、内存及网络带宽等资源,致使 Eucalyptus 无
21、法开启新的虚拟机实例,无法及时对终端用户的请求进行响应;最后,从 Syslog、Snort 等日志记录中查找本次攻击的来源。Zafarullah 总的研究思路就是先对 Eucalyptus 进行攻击,然后针对该类型的攻击寻找相应的取证方法。虽然作者提出的方法对特定类型攻击的取证调查有较强的借鉴意义,但还存在两点不足,首先,网络攻击的方式多种多样且不断变化,对每一种攻击都提出一种取证方案的可行性不大且没有必要;其次,对于那些符合云系统安全规则所产生的数字证据,作者并没有提出有效的提取方法。 虚拟化技术在云取证中的应用由于虚拟化技术在云计算中的应用,如何通过虚拟化技术来进行证据的获取是一个值得考虑
22、的问题。 这里讲到的便是虚拟机内省机制(VMI) 。虚拟机自省技术通过监视虚拟机获取被监控主机的内存信息、CPU 使用情况等计算机系统的运行状态信息。它被充分应用在安全领域的研究工作中。以下是虚拟机内省实现的几个典型方式 【21】 。虚拟机内省技术在云取证中主要应用在以下方面:首先,通过在虚拟机内安装额外的软件来进行证据的获取。Carbone 等人 22开发了一个安全并且健壮的叫做“SYRINGE”的应用。该应用被放置在一个隔离的虚拟机内,但是却可以通过函数调用注入技术来激活客户机功能,从而监控客户机的活动。另一种技术就是本地看管(Localized Shepherding),它用来检查被激活
23、的客户端操作系统代码的安全执行,从而防止代码漏洞攻击。其次,有些学者将VMI 与在线取证结合在一起,例如 Dolan-Gavitt 等人 23将 Volatility 框架与 Hypervisor 技术结合在一起, 在此基础上提出了一个全局的动态分割(Dynamic Slicing)技术。而语义鸿沟问题的解决是通过对操作系统行为的建模来生成内省程序来解决。建模过程包括:训练阶段、分析阶段、运行阶段。训练阶段即通过对客户端系统中所有进程运行时出现的轨迹或行为(由 Volatility 框架获取)的学习,分析阶段则根据这些轨迹,结合动态分割技术剔除执行进程的一些“噪音” ,最后分析后得到的内省程序
24、便用于监控正在运行的虚拟机。云计算在云取证中的一些应用由于云计算的大存储容量、高可靠性、强计算能力,对于在云中搜集的大规模证据可以由云平台本身来分析处理。Roussev and Richard 等人 24提出了一种基于 MapReduce 模型的原型系统,MPI MapReduce(MMR )该系统基于 Phoenix,Phoenix 也是一个类似于 Hadoop的开源 MapReduce 实现框架,通过该系统可以自定义实现对数据的处理。不仅如此,云计算强大的计算能力也可用于密码的恢复和哈希破解等应用,例如云服务端为了保证用户数据的隐私性,在数据传输到云中前,会在客户端进行加密之后再存到云中,
25、这些加密的数据可能也会包含证据,云平台便可运用其中。参考文献: 1 SIMSON L G. Digital forensics research: the next 10 yearsJ. Digital Investigation, 2010, 7:64-73. 2 WOLTHUSEN S D. Overcast: forensic discovery in cloud environ-mentsA. 5th International Conference on IT Security Incident Man-age-ment and IT ForensicsC. Stuttgart, 2
26、009. 3-9. 3 KEYUN R, JOE C, TAHAR K, et al. Cloud forensics: an overviewA. 7th IFIP Conference on Digital ForensicsC. Florida, USA, 2011. 35-46. 4 BIGGS S, VIDALIS S. Cloud Computing: the impact on digital foren-sic investigationsA. International Conference for Internet Technolo-gy and Secured Trans
27、actionsC. London, 2009. 1-6.5 BIRK D, WEGENER C. Technical issues of forensic investigations in cloud computing enviro-nmentsA. IEEE 6th International Workshop on Systematic Approaches to Digital Forensic EngineeringC. Oak-land, 2011. 1-10. 6 李小凯.云计算环境下计算机侦查取证问题研究D.北京:北京政法大学,2011.7 武鲁,王连海,顾卫东.基于云的计算
28、机取证系统研究J.计算机科学,2012,39(5):32-35.8 KEYUN R, IBRAHIM B, JOE C, et al. Survey on cloud forensics and critical criteria for cloudforensic capability: a preliminary analysisA. Proceedings of the ADFSL Conference on Digital Forensics, Security and LawC. Virginia, USA, 2011. 105-121. 9 REILLY D, WREN C, BE
29、RRY T. Cloud computing: forensic chal-lenges for law enforcementA. International Conference for Internet Technology and Secured TransactionsC. London, 2010. 1-7.10G. Grispos, T. Storer, and W. Glisson, “Calm before the storm: The challenges of cloud computing in digital forensics,” International Jou
30、rnal of Digital Crime and Forensics (IJDCF),2012.11 Sebastian Roschke, Feng Cheng, Christoph Meinel, “Intrusion Detection in the Cloud“, Eighth IEEE International Conference on Dependable, Autonomic and Secure Computing, Hasso Plattner Institute (HPI), University of Potsdam, 2009. 12K.Rogers, M., Go
31、ldman, J., Mislan, R., Wedge, T., & Debrota, S. (2006). Computer Forensics Field Triage Process Model. Proceedings of Conference on Digital Forensics, Security and Law, (pp. 27-40).13 Delport, W., Olivier, M.S., Koehn, M.: Isolating a cloud instance for a digital forensic investigation. In: Proceedi
32、ngs of the 2011 Information Security for South Africa (ISSA 2011) Conference (2011)14Taylor, M., Haggerty, J., Gresty, D., Hegarty, R.: Digital evidence in cloud computing systems. Computer Law & Security Review 26(3), 304308 (2010) 15Lu, R., Lin, X., Liang, X., Shen, X.S.: Secure provenance: the es
33、sential of bread and butter of data forensics in cloud computing. In: Feng, D., Basin, D.A., Liu, P. (eds.) Proceedings of the 5th ACM Symposium on Information, Computer and Communications Security (ASIACCS 2010), pp. 282292. ACM (2010)16Marty, R.: Cloud application logging for forensics. In: Chu, W
34、.C., Wong, W.E., Palakal, M.J., Hung, C.C. (eds.) Proceedings of the 2011 ACM Symposium on Applied Computing (SAC), pp. 178184. ACM (2011)17Accorsi, R.: Business process as a service: Chances for remote auditing. In: Proceedings of 35th IEEE Annual Computer Software and Applications Conference Works
35、hops (2011)18 ELIE B, IVAN F, MATTHIEU M, et al. Doing forensics in the cloud age OWADE: beyond files recovery forensicA. Black HatC. LasVegas, 2011. 1-23. 19 周刚. 云计算环境中面向取证的现场迁移技术研究D. 武汉:华中科技大学, 2011.20 ZAFARULLAH Z, ANWAR F, ANWAR Z. Digital forensics for eu-calyptus A. Frontiers of Information Te
36、chnologyC. Islamabad, 2011. 110-116. 21姜秋生, 容晓峰. VMI 技术研究综述 J. 电子设计工程, 2013, 21(1): 13-16.22Carbone M, Conover M, Montague B, et al. Secure and robust monitoring of virtual machines through guest-assisted introspectionM/Research in Attacks, Intrusions, and Defenses. Springer Berlin Heidelberg, 2012:
37、 22-41.23Dolan-Gavitt B, Leek T, Zhivich M, et al. Virtuoso: Narrowing the semantic gap in virtual machine introspectionC/Security and Privacy (SP), 2011 IEEE Symposium on. IEEE, 2011: 297-312.24Roussev V, Wang L, Richard G, et al. A cloud computing platform for large-scale forensic computingM/Advances in Digital Forensics V. Springer Berlin Heidelberg, 2009: 201-214.