[发明专利]一种Mac OS系统的物理内存镜像文件分析方法无效
申请号: | 201110209546.4 | 申请日: | 2011-07-26 |
公开(公告)号: | CN102279877A | 公开(公告)日: | 2011-12-14 |
发明(设计)人: | 顾卫东;徐丽娟;王连海;武鲁;张淑慧 | 申请(专利权)人: | 山东省计算中心 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F12/02 |
代理公司: | 济南泉城专利商标事务所 37218 | 代理人: | 李桂存 |
地址: | 250014 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 mac os 系统 物理 内存 文件 分析 方法 | ||
技术领域
本发明涉及一种Mac OS系统的物理内存镜像文件分析方法,更具体的说,尤其涉及一种使用内核进程地址空间中指向最高级页表的指针进行内核虚拟地址向物理地址转换再通过该方法获取内核符号表和字符串表信息的Mac OS系统的物理内存镜像文件分析方法。本技术将应用于计算机取证领域,主要用于信息安全事件和各类计算机犯罪案件的调查取证。
背景技术
a. 涉及概念及专业术语
a-1. 物理内存镜像文件
物理内存镜像文件是指把目前正在运行的计算机中物理内存里的信息按照一个比特对应一个比特的方式映射出来所组成的文件,该文件中数据的位置与物理内存中数据的位置是一一对应的。在vmware虚拟机中,可以通过执行snapshot操作来获取物理内存镜像文件,该文件就是执行snapshot操作后所产生的以.vmem为扩展名的文件;在物理计算机中,可以通过软件如dd获取其对应的物理内存镜像文件。
a-2. 任务
Mach的抽象定义,含有虚拟地址空间和端口名字空间。任务本身不做任何操作,而是为线程提供上下文环境。
a-3. 进程
BSD中对运行程序的抽象定义。进程资源包括虚拟地址空间、线程和文件描述符。在Mac OS X中,进程基于一个Mach任务和一个或多个Mach线程。
a-4. 内核空间
内核空间,内核进程运行的地址空间。
a-5. 内核映像
内核的代码和数据就叫内核映像(Kernel Image)。
b. 研究背景
为推进物理内存分析技术的发展,DFRWS(Digital Forensic Research Workshop)于2005年推出了名为“Forensics Challenge”的活动,活动的主题就是物理内存分析。从此,对于物理内存的分析和获取成为计算机取证的研究热点。2008年和2009年,公司和政府部门把研究重点都放在了对Windows操作系统的物理内存分析上,并取得了一定的发展。但是,这些年对于Mac OS系统的物理内存分析基本上从未涉及。2010年,Matthieu Suiche首次提出了Mac OS的物理内存分析方法,这也是目前所公开的唯一的一种Mac OS的物理内存分析方法。该方法首先获取内核符号表及与之对应的字符串表;然后从内核符号表中获得IdlePDPT、IdlePDPT64、IdlePML4、IdlePTD四个内核变量的值,根据这些值实现内核虚拟地址向物理地址的转换;最后,在地址转换和内核符号变量的基础上,分析进程、挂载的文件系统、系统调用表、内核扩展等一系列信息。其具体过程如下:
b-1.内核符号表的获取
Windows操作系统编译器一般把符号存储在以PDB为扩展名的外部文件中。在Mac OS X操作系统中,编译器把符号文件存放在内核可执行文件的__LINKEDIT节中。 该节包含了字符串表(存放内核符号名)和符号表(存放与内核符号名相对应的内核符号值)的偏移。对Mac OS的物理内存分析以符号表的获取为基础。获取符号表的基本步骤是,首先根据FAT文件格式和Mach-O文件格式获取内核镜像文件在内存中的文件内容;然后,对该文件进行分析,读取__LINKEDIT节中字符串表偏移和符号表偏移的值;最后,解析__LINKEDIT的内容获取内核符号表。涉及到的具体数据结构及符号表的具体寻找方法如下:
#define FAT_MAGIC 0xBEBAFECA
Typedef struct _FAT_HEADER
{
ULONG magic;
ULONG nfat_arch;
}FAT_HEADER, *PFAT_HEADER;
可以根据FAT_MAGIC找到文件头。从文件头的位置开始,加上sizeof(FAT_HEADER)就可以找到第一个文件结构,定义如下:
Typedef struct _FAT_ARCH
{
cpu_type_t cputype;
cpu_subtype_t cpusubtype;
ULONG offset;
ULONG size;
ULONG align;
}FAT_ARCH,*PFAT_ARCH;
Mach-O文件头起始位置 = FAT文件头起始位置 + offset。其结构如下所示:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东省计算中心,未经山东省计算中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110209546.4/2.html,转载请声明来源钻瓜专利网。