CN105653352B - 操作系统虚拟仿真取证的方法 - Google Patents

操作系统虚拟仿真取证的方法 Download PDF

Info

Publication number
CN105653352B
CN105653352B CN201511027276.XA CN201511027276A CN105653352B CN 105653352 B CN105653352 B CN 105653352B CN 201511027276 A CN201511027276 A CN 201511027276A CN 105653352 B CN105653352 B CN 105653352B
Authority
CN
China
Prior art keywords
virtual machine
disk
virtual
file
evidence obtaining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201511027276.XA
Other languages
English (en)
Other versions
CN105653352A (zh
Inventor
吴松洋
张旭
刘欣
杨涛
刘善军
王旭鹏
杜琳
张勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Third Research Institute of the Ministry of Public Security
Original Assignee
Third Research Institute of the Ministry of Public Security
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Third Research Institute of the Ministry of Public Security filed Critical Third Research Institute of the Ministry of Public Security
Priority to CN201511027276.XA priority Critical patent/CN105653352B/zh
Publication of CN105653352A publication Critical patent/CN105653352A/zh
Application granted granted Critical
Publication of CN105653352B publication Critical patent/CN105653352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种操作系统虚拟仿真取证的方法,所述的方法包括以下步骤:将虚拟操作环境下虚拟机中待虚拟仿真取证的磁盘文件格式挂载到服务主机上;在虚拟机关机的状态下获取虚拟机的静态信息;待虚拟仿真取证的磁盘文件格式包括物理磁盘或磁盘镜像;物理磁盘为其支持以USB接口的形式加载物理磁盘;磁盘镜像是为支持以文件的形式加载磁盘镜像。采用该种结构的操作系统虚拟仿真取证的方法,使用物理磁盘或者磁盘镜像,通过在VMware以只读方式仿真启动操作系统,在仿真操作系统中可以查看物理磁盘或者磁盘镜像原始操作系统中的内容,以达到不用损坏物理磁盘或者磁盘镜像来取证的目的,操作简单,应用范围广泛。

Description

操作系统虚拟仿真取证的方法
技术领域
本发明涉及信息安全领域,尤其涉及电子数据取证,具体是指一种操作系统虚拟仿真取证的方法。
背景技术
待取证操作系统中的各类数据是重要的证据来源,能较全面的对原始证据进行取证。计算机虚拟技术是通过软件来模拟计算机硬件的技术。目前,物理计算机的计算量、存储量有了非常大的进步。计算机上安装了虚拟机之后可以在一台机器上模拟出多台机器的效果,能完成架设多计算机服务程序、隐蔽网络访问等需求,因此,越来越多的数据以及服务被存储和移植到了虚拟计算机上。随之带来的针对虚拟机的数据恢复与取证需要在虚拟机上对物理磁盘或者磁盘镜像磁盘进行系统仿真取证。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种解决虚拟操作环境下针对物理磁盘或者磁盘镜像的操作系统仿真问题、采用直接从某个磁盘分区或者整个磁盘来创建一个VMware的虚拟机的方法达到对物理磁盘或者磁盘镜像的仿真取证的操作系统虚拟仿真取证的方法。
为了实现上述目的,本发明的操作系统虚拟仿真取证的方法具有如下构成:
该操作系统虚拟仿真取证的方法,其主要特点是,所述的方法包括以下步骤:
(1)将虚拟操作环境下虚拟机中待虚拟仿真取证的磁盘文件格式挂载到服务主机上;
(2)在虚拟机关机的状态下获取虚拟机的静态信息。
进一步地,所述的步骤(1)具体包括以下步骤:
(1.1)挂载待虚拟仿真取证的物理磁盘或磁盘镜像;
(1.2)获取虚拟机的工作始点;
(1.3)创建虚拟机vmx配置文件。
更进一步地,所述的步骤(1.1)具体为:
挂载待虚拟仿真取证的支持以USB接口加载的物理磁盘或挂载待虚拟仿真取证的支持以文件形式加载的磁盘镜像。
更进一步地,所述的步骤(1.2)具体包括以下步骤:
(1.2.1)判断所述的物理磁盘或者所述的磁盘镜像是否为只读模式;
(1.2.2)如果所述的物理磁盘或者所述的磁盘镜像为只读模式,则判断所述的虚拟机是否存在快照;
(1.2.3)如果所述的虚拟机存在快照,则根据从上次离开的地方继续工作,然后继续步骤(1.3);
(1.2.4)如果所述的虚拟机先前未被启动,则继续步骤(1.3);
(1.2.5)如果所述的物理磁盘或者所述的磁盘镜像不为只读模式,则继续步骤(2)。
更进一步地,所述的步骤(2)具体包括以下步骤:
(2.1)判断所述的虚拟机中是否存在mbr文件;
(2.2)如果所述的虚拟机中存在mbr文件,则读取所述的mbr文件后,启动虚拟机;
(2.3)如果所述的虚拟机中不存在mbr文件,则采用预先定制的mbr文件修复启动主扇区,然后继续步骤(1.2)。
再进一步地,所述的步骤(2.1)具体包括以下步骤:
(2.1.1)判断所述的虚拟机中是否存在vmware工具集;
(2.1.2)如果所述的虚拟机中存在vmware工具集,则判断所述的虚拟机是否存在操作密码;
(2.1.3)如果所述的虚拟机不存在操作密码,则判断所述的虚拟机中是否存在mbr文件;
(2.1.4)如果所述的虚拟机中存在mbr文件,则返回所述的虚拟机中存在mbr文件的结果;
(2.1.5)如果所述的虚拟机中不存在mbr文件,则返回所述的虚拟机中不存在mbr文件的结果;
(2.1.6)如果所述的虚拟机存在操作密码,则更改注册表破解所述的虚拟机的密码,然后继续步骤(2.1.8);
(2.1.7)如果所述的虚拟机中不存在vmware工具集,则继续步骤(2.1.8);
(2.1.8)读取所述的mbr文件后,启动虚拟机。
采用了该发明中的操作系统虚拟仿真取证的方法,使用物理磁盘或者磁盘镜像,通过在VMware以只读方式仿真启动操作系统,在仿真操作系统中可以查看物理磁盘或者磁盘镜像原始操作系统中的内容,以达到不用损坏物理磁盘或者磁盘镜像来取证的目的,操作简单,应用范围广泛。
附图说明
图1为本发明的操作系统虚拟仿真取证的方法的步骤流程图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
本发明详细分析了使用物理磁盘或者磁盘镜像,通过在VMware以只读方式仿真启动操作系统,在仿真操作系统中可以查看物理磁盘或者磁盘镜像原始操作系统中的内容,以达到不用损坏物理磁盘或者磁盘镜像来取证的目的。
请参阅图1所示,图1为本发明的操作系统虚拟仿真取证的方法的步骤流程图。
首先将虚拟操作环境下虚拟机中待系统虚拟仿真取证的磁盘文件格式挂载到服务主机上;在一种优选的实施方式中,待系统虚拟仿真取证的磁盘文件可以是物理磁盘或者磁盘镜像;其中,物理磁盘可以是各种类型的物理磁盘,包括SATA、IDE、SSD等各种常见物理硬盘,其支持以USB接口的形式加载物理磁盘;磁盘镜像则是支持常见的img、dd等磁盘镜像格式,其支持以文件的形式加载磁盘镜像。物理磁盘或者磁盘镜像支持常见的Windows和Linux操作系统类型。
然后,在虚拟机关机的状态下获取虚拟机的静态信息;在一种优选的实施方式中,所述的静态信息包含操作系统信息,虚拟机文件系统内容、文件格式、文件结构、分区信息、文件表、残存文件。能将文件系统以图形用户界面的方式展现给取证人员。支持特定目录下的特定文件的搜索,将搜索出来的文件进行加密,可采用MD5摘要算法或其它算法,加密后的文件不可再改动,具有不可抵赖性,最后以电子证据的形式保存到数据库中。
在一种优选的实施方式中,选取VMware虚拟机为例,研究在虚拟操作环境中的勘查取证分析。VMware虚拟机的虚拟磁盘格式为VMDK文件,通过对VMDK文件格式的深入分析,将虚拟磁盘模拟为物理设备,实现了对虚拟磁盘的挂载,获取到虚拟磁盘的文件系统。
首先,使用vmware-amount工具将物理磁盘或者磁盘镜像挂载到本机操作系统环境下,对于vmware-amount工具以及其他vmware系统的工具集,由于操作系统的不同会导致这些可运行程序所存储的位置不同,通过调用Windows操作系统WMI的方法获取到准确的vmware工具集可运行程序位置。
将虚拟磁盘挂载的过程中会判断该虚拟机是否存在快照,如果存在则说明该虚拟机先前被启动过,否则未被启动过。如果这个磁盘镜像已经在之前被启动,可以采用从上次离开的地方继续工作,亦可从头开始工作。将整个物理磁盘或者磁盘镜像以文件的形式读入到内存中后,一般在磁盘文件的二进制字节的头部会发现物理磁盘或者磁盘镜像对应的mbr文件结构。
mbr指的是主启动扇区,如果物理磁盘或者磁盘镜像受到破损或者其他外部原因无法正常读取mbr文件,我们可采用预先定制的mbr文件结构来重构受损的物理磁盘或者磁盘镜像主启动扇区头,针对不同的操作系统预先定制有不同的主启动扇区头结构。
由于vmware虚拟机的启动是从vmx启动生成的,根据物理磁盘或者磁盘镜像的mbr文件中的信息可以生成对应的虚拟机vmx文件。在每个虚拟机文件夹底下都能找到一个.vmx的文件。这个文件记录了该虚拟机的配置情况,可以用文本编辑器打开它,发现其实就是一个properties文件。我们针对要虚拟仿真的物理磁盘或者磁盘镜像,需要编写代码手动的生成一个vmx配置文件,添加以下新增配置内容能让虚拟仿真的物理磁盘或者磁盘镜像在虚拟机中正常的启动。
mainMem.useNamedFile="FALSE",该配置可以禁止vmem交换文件的生成。如果将该配置参数设为true,虚拟机在启动时会生成与设定内存相同大小的内存交换文件。这就如同操作系统的虚拟内存一样,虚拟机自己管理虚拟机的分页文件,这个设定在需要取证的物理磁盘或者磁盘镜像是适用的,因为物理磁盘或者磁盘镜像上可能会运行不同的虚拟机镜像,各自要相对独立。但是如果只是在个人PC机上运行一个虚拟机测试环境,则该配置会既占硬盘空间又会遇到I/O瓶颈,所以建议关闭此选项,适用操作系统的分页交换机制。
MemTrimRate=0,关闭该选项会禁止待仿真的物理磁盘或者磁盘镜像在虚拟机中启动时不会用到内存释放给主机,能使虚拟机的内存分配更快。
sched.mem.pshare.enable="FALSE",关闭该选项会使得待仿真的物理磁盘或者磁盘镜像在虚拟机中启动时共享普通内存块。
一个正常的vmx文件主要由Static Values、Drive Info和User Specified这三部分组成。
其中Static Values通常包含以下内容:
#Static Values
config.version
virtualHW.version
floppy0.present
displayName
Drive Info通常包含以下内容:
#Drive Info
ide0:0.present
ide0:0.fileName
ide0:0.deviceType=disk
ide0:0.mode=persistent
ide1:0.present=TRUE
ide1:0.fileName=auto detect
ide1:0.deviceType=cdrom-raw
User Specified通常包含以下内容
#User Specified
memsize
rtc.starttime
tools.syncTime=FALSE
time.syncronized.continue=FALSE
time.syncronized.restore=FALSE
time.syncronized.resume.disk=FALSE
time.syncronized.resume.memory
time.syncronized.shrink=FALSE
guestOS
snapshot.disabled
在程序中可以针对这些不同的参数含义配置不同的参数值,以便在待仿真的物理磁盘或者磁盘镜像中设置相应的虚拟机参数。VMWare虚拟操作环境下的vmx文件生成后,下一步即可以生成可以由VMWare Workstation或者VMWare Player该类虚拟机工具启动运行的vmdk虚拟磁盘文件。vmdk虚拟磁盘文件通常由Disk Descriptor File和Disk Data Base两部分组成。
其中Disk Descriptor File通常包含以下内容:
#Disk Descriptor File
version=1
CID=fffffffe
parentCID=ffffffff
createType=monolithicFlat
如果当挂载的是物理磁盘时,createType的类型为fullDevice。
其中Disk Data Base通常包含以下内容:
"#DDB-Disk Data Base
ddb.adapterType=ide
ddb.geometry.sectors=mbr.BootablePartition.EndSector
ddb.geometry.heads=mbr.BootablePartition.EndHead
ddb.geometry.cylinders=mbr.largestCylinderValOnDisk()
ddb.virtualHWVersion=3
根据挂载的虚拟磁盘的mbr文件生成了包含上述配置属性的虚拟机启动配置文件.vmx文件,在最后的生成阶段,可以选择只生成vmx文件,通过手动启动vmx文件来达到虚拟仿真物理磁盘或者磁盘镜像的功能。也可以直接调用操作系统注册表查询接口自动获取到VMware Workstation在系统中安装的位置、路径等其他配置,然后直接调用WMI接口启动已生成好的vmx虚拟机文件,以达到对物理磁盘或者磁盘镜像仿真取证的目的。
最后根据输入的系统仿真参数,通常包括仿真操作系统类型、仿真系统启动时间、仿真系统内存大小和选择是从物理磁盘或者磁盘镜像中启动仿真系统等参数生成对应该的vmdk文件,根据原始物理磁盘或者磁盘镜像中的mbr文件中指定的二进制字段会生成对应的仿真操作系统注册表文件,根据对应的注册表文件和vmdk文件从VMWare Workstation中启动虚拟操作环境下的仿真系统,以达到对待取证物理磁盘或者磁盘镜像的系统仿真取证。
采用了该发明中的操作系统虚拟仿真取证的方法,使用物理磁盘或者磁盘镜像,通过在VMware以只读方式仿真启动操作系统,在仿真操作系统中可以查看物理磁盘或者磁盘镜像原始操作系统中的内容,以达到不用损坏物理磁盘或者磁盘镜像来取证的目的,操作简单,应用范围广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (4)

1.一种操作系统虚拟仿真取证的方法,其特征在于,所述的方法包括以下步骤:
(1)将虚拟操作环境下虚拟机中待虚拟仿真取证的磁盘文件格式挂载到服务主机上,具体包括以下步骤:
(1.1)挂载待虚拟仿真取证的物理磁盘或磁盘镜像;
(1.2)获取虚拟机的工作始点,具体包括以下步骤:
(1.2.1)判断所述的物理磁盘或者所述的磁盘镜像是否为只读模式;
(1.2.2)如果所述的物理磁盘或者所述的磁盘镜像为只读模式,则判断所述的虚拟机是否存在快照;
(1.2.3)如果所述的虚拟机存在快照,则根据从上次离开的地方继续工作,然后继续步骤(1.3);
(1.2.4)如果所述的虚拟机先前未被启动,则继续步骤(1.3);
(1.2.5)如果所述的物理磁盘或者所述的磁盘镜像不为只读模式,则继续步骤(2);
(1.3)创建虚拟机vmx配置文件;
(2)在虚拟机关机的状态下获取虚拟机的静态信息。
2.根据权利要求1所述的操作系统虚拟仿真取证的方法,其特征在于,所述的步骤(1.1)具体为:
挂载待虚拟仿真取证的支持以USB接口加载的物理磁盘或挂载待虚拟仿真取证的支持以文件形式加载的磁盘镜像。
3.根据权利要求2所述的操作系统虚拟仿真取证的方法,其特征在于,所述的步骤(2)具体包括以下步骤:
(2.1)判断所述的虚拟机中是否存在mbr文件;
(2.2)如果所述的虚拟机中存在mbr文件,则读取所述的mbr文件后,启动虚拟机;
(2.3)如果所述的虚拟机中不存在mbr文件,则采用预先定制的mbr文件修复启动主扇区,然后继续步骤(1.2)。
4.根据权利要求3所述的操作系统虚拟仿真取证的方法,其特征在于,所述的步骤(2.1)具体包括以下步骤:
(2.1.1)判断所述的虚拟机中是否存在vmware工具集;
(2.1.2)如果所述的虚拟机中存在vmware工具集,则判断所述的虚拟机是否存在操作密码;
(2.1.3)如果所述的虚拟机不存在操作密码,则判断所述的虚拟机中是否存在mbr文件;
(2.1.4)如果所述的虚拟机中存在mbr文件,则返回所述的虚拟机中存在mbr文件的结果;
(2.1.5)如果所述的虚拟机中不存在mbr文件,则返回所述的虚拟机中不存在mbr文件的结果;
(2.1.6)如果所述的虚拟机存在操作密码,则更改注册表破解所述的虚拟机的密码,然后继续步骤(2.1.8);
(2.1.7)如果所述的虚拟机中不存在vmware工具集,则继续步骤(2.1.8);
(2.1.8)读取所述的mbr文件后,启动虚拟机。
CN201511027276.XA 2015-12-31 2015-12-31 操作系统虚拟仿真取证的方法 Active CN105653352B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511027276.XA CN105653352B (zh) 2015-12-31 2015-12-31 操作系统虚拟仿真取证的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511027276.XA CN105653352B (zh) 2015-12-31 2015-12-31 操作系统虚拟仿真取证的方法

Publications (2)

Publication Number Publication Date
CN105653352A CN105653352A (zh) 2016-06-08
CN105653352B true CN105653352B (zh) 2019-03-15

Family

ID=56490107

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511027276.XA Active CN105653352B (zh) 2015-12-31 2015-12-31 操作系统虚拟仿真取证的方法

Country Status (1)

Country Link
CN (1) CN105653352B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959903B (zh) * 2018-06-11 2022-03-04 超越科技股份有限公司 一种移动存储设备安全管控方法及系统
CN111338889B (zh) * 2020-02-14 2023-05-23 奇安信科技集团股份有限公司 支持多种操作系统的取证方法、装置、设备及存储介质
CN114138346A (zh) * 2021-11-02 2022-03-04 北京安天网络安全技术有限公司 一种终端取证方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101944043A (zh) * 2010-09-27 2011-01-12 公安部第三研究所 Windows平台下Linux虚拟机磁盘文件访问方法
CN102739774A (zh) * 2012-05-28 2012-10-17 中国科学院软件研究所 一种云计算环境下的取证方法及系统
CN103605588A (zh) * 2013-11-21 2014-02-26 上海爱数软件有限公司 一种虚拟机磁盘备份方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101944043A (zh) * 2010-09-27 2011-01-12 公安部第三研究所 Windows平台下Linux虚拟机磁盘文件访问方法
CN102739774A (zh) * 2012-05-28 2012-10-17 中国科学院软件研究所 一种云计算环境下的取证方法及系统
CN103605588A (zh) * 2013-11-21 2014-02-26 上海爱数软件有限公司 一种虚拟机磁盘备份方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
虚拟计算取证技术研究;宋铮;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110731;对比文件1的2.3.2小节全部内容、3.1.1小节全部内容、4.1.2小节全部内容

Also Published As

Publication number Publication date
CN105653352A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
US10713120B2 (en) Unique identifiers for data replication, migration, failover operations and failback operations
JP4916576B2 (ja) マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法
RU2409838C2 (ru) Архивирование данных в виртуальном прикладном окружении
US10606800B1 (en) Policy-based layered filesystem management
US8639787B2 (en) System and method for creating or reconfiguring a virtual server image for cloud deployment
US9870288B2 (en) Container-based processing method, apparatus, and system
US9465518B1 (en) Method and system for creation, analysis and navigation of virtual snapshots
US8924703B2 (en) Secure virtualization environment bootable from an external media device
EP2765508B1 (en) Installation method and installation device for application software
US8726273B2 (en) Space efficient virtual machines
US8543797B1 (en) Managed desktop system
US20100235831A1 (en) Method for dynamic configuration of virtual machine
US20120246645A1 (en) Method for managing virtual machine, information processing apparatus, and medium for virtual machine management program
US20090007105A1 (en) Updating Offline Virtual Machines or VM Images
US20050193188A1 (en) Method and apparatus for operating a host computer from a portable apparatus
CN102419803B (zh) 计算机病毒查杀方法、系统及装置
Gilbert et al. Pocket ISR: Virtual machines anywhere
CN105653352B (zh) 操作系统虚拟仿真取证的方法
US20150106334A1 (en) Systems and methods for backing up a live virtual machine
US20130246725A1 (en) Recording medium, backup control method, and information processing device
US11693689B2 (en) Online disk encryption using mirror driver
KR101835431B1 (ko) 가상화 시스템에서 컨테이너의 데이터 업데이트 방법 및 그 장치
JP6887964B2 (ja) 情報処理装置、及び情報処理装置の制御方法
KR101552580B1 (ko) 모바일 기기를 포함하는 시스템 복원 및 멀티 운영체제를 지원하는 백업 방법
Welch et al. A practical approach to system preservation workflows

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant