王文奇,李世晓
(中原工学院,郑州450007)
用户行为逆向分析技术研究
王文奇,李世晓
(中原工学院,郑州450007)
通过收集并分析用户在计算机上的各种遗留信息,根据Windows操作系统提供的用户对各种文件的操作行为,设计了一种逆向综合分析算法,可分析出一定时间内用户对计算机的各种行为和操作,从而为发现各种非法和异常行为并加固操作系统提供可靠的支撑信息.
遗留信息;逆向综合分析算法;用户行为
近年来,网络及信息安全技术和安全措施层出不穷,如数据传输与存储加密、防火墙、虚拟专用网络、入侵检测系统、网络安全服务器和安全管理中心等,这些安全机制的确能够解决系统安全中某些方面的问题.从宏观上看,它们基本上都属于被动式防御技术,单纯依靠这些技术不可能满足全部的安全要求.
在用户使用计算机以及计算机各种软件运行的过程中,应用软件和操作系统会以不同的方式记录用户的使用过程,从而在计算机中遗留大量的信息[1].对这些遗留信息进行提取,进而逆向综合分析,可获得用户在计算机上的操作行为.这样不但可以分析出系统的缺陷,进而加固操作系统,还可以将这些信息固定封存,作为取证的基础[2].
分析遗留信息时有几个关键问题需要解决.首先,计算机磁盘中存储着海量的信息,需要从中查找并获取用户在计算机上遗留的有用信息;其次,计算机中存储的信息格式不同、种类繁多,如何针对不同格式的信息展开综合分析,也是一个需要解决的问题.
遗留信息可能存在于注册表、数据文件、临时文件、系统日志、交换区文件中,当然也有可能存在于回收站、硬盘未分区空间、系统缓冲区等不同的位置.分析主机遗留信息,就是在上述存储介质中尽可能地寻找所有系统、软件遗留的信息和用户的操作痕迹.
虽然目前已有360安全卫士等系列软件针对遗留信息进行分析,但360安全卫士仅仅是简单扫描某几款常用软件的位置,通过删除使用者的操作痕迹,确保使用者的隐私.系统和软件在使用过程中会遗留大量信息,360安全卫士等系列软件并不能将其全部检测和删除.因此,有必要利用专门的工具和软件,彻底地对用户操作计算机的遗留信息进行分析.
纯手工分析遗留的数据不太现实,只有通过监控软件对其进行大量测试、比较,才能够准确得知系统文件和程序的变化,检测用户的使用行为,重构用户操作活动.对于Windows操作系统来说,注册表是操作系统的核心,它保留了Windows系统中所有32位硬件/驱动和32位应用程序的数据文件,是一个系统信息的数据库.因此,注册表必然保留了用户操作的大量遗留信息.同时,用户对主机的操作不可能是仅仅运行软件.软件运行是为了对信息进行处理,因此,这些信息必然作为一个文件保存下来.目前,有大量的注册表和文件变化监控软件,为了尽可能地分析所有的遗留信息,经过分析比对各软件使用的监控技术,我们主要采用如下的监控软件:
(1)RegSnap.它是一个专门用于比较 Windows注册表及系统启动设置文件变化的工具,工作方法较为简单.在需要的时候,通过“File/New”菜单或工具条按钮将当前注册表及相关内容保存到扩展名为rgs的文件中(在软件安装之前和安装结束后分别保存一次),然后通过“File/Compare”菜单比较这两个文件,Regsnap就会详细地报告注册表及与系统有关的其他内容的变化情况.Regsnap比较报告的主要内容有:对注册表修改了哪些键以及这些键修改前后的值,增加和删除了哪些键以及这些键的值.报告结果既可以纯文本的方式,也可以html网页的方式显示,便于查看.
(2)Filemon.它是一款出色的文件监控软件,用于监视应用程序进行的文件创建、读取和修改操作,并允许系统用户保存、过滤、查找已记录的文件信息,为用户维护系统、发现问题提供便利.
通过以上工具的分析以及资料的收集和分析,用户在使用计算机过程中主要会遗留以下信息:
(1)日志文件.日志文件是 Windows系统中一个比较特殊的文件,记录着Windows系统运行过程中许多关键事件,如各种系统服务的启动、运行、关闭等信息.Windows日志包括应用程序、安全、系统等几个部分,它们的存放路径是 “%systemroot%\system32\config”.应用程序日志、安全日志和系统日志对应的文 件 名 分 别 为 App Event.evt、SecEvent.evt 和SysEvent.evt.这些文件受到“Event Log(事件记录)”服务的保护,不能被删除,但可以被清空.
(2)上网记录.浏览器是当前计算机用户最常用的计算机软件之一.用户在使用浏览器上网的过程中,浏览器一般为了提高浏览的速度,采用了数据缓冲技术,即利用HTTP协议把要浏览的信息下载到本地磁盘,然后再显示出来[3].同时IE浏览器为方便用户的使用,记录了用户的访问历史.为维护用户的正常使用,IE浏览器记录了每次连接的cookie记录,在注册表记录了用户的登录上网网址,同时在Index.dat文件中详细记录了用户在上网过程中浏览过的信息.不同浏览器的遗留信息记录位置和记录内容会有细微的不同.
(3)Index.dat文件.Windows系统中会存在三个index.dat文件,它们分别用来保存IE上网的cookies、临时文件和上网历史的索引信息.index.dat文件还包括用户使用文件的记录.根据Windows系统版本的不同,这些文件在系统中的位置也是不尽相同的.在Window2000/XP系统中,index.dat一般存在于下面的位置中[4]:
C:\Documents and Settings\<username>\Cookies\index.dat
C:\Documents and Settings\<username>\Local Settings\History\History.IE5\index.dat
C:\Documents and Settings\<username>\Local Settings\Temporary Internet Files\Content.IE5\index.dat
(4)使用文件记录.在Windows操作系统中,除了index.dat文件中保存了用户使用的记录外,还在其他多个位置保存了用户使用的记录.其位置分别如下:
C:\Documents and Settings\Administrator\Recent文件夹,它包含最近打开使用过的文件,它们是文件的快捷方式,并不是文件的真实存放位置.快捷方式中保存了源文件的打开文件时间、源文件位置等信息.
注册表中的 HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Ver sion\Explorer\RecentDocs\,这里保存了所有最近打开的文件,但是只保存了打开的文件名,不包含文件位置以及打开文件时间,用户只能从最后写入注册表的时间获得最后一次打开文件的时间.
注册表中 HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr ent Version\Explorer下各子键,它包含了各种常用类型文件的打开记录,如doc文件位于主键 HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Version\Explorer\Recent Docs\.doc下,包含了最近打开的doc文档.
另外,其他非 Microsoft软件可能不遵循 Windows规范,而是自己在注册表设定、保存最近打开文件的记录,如福昕阅读器,其最近打开文档的位置为HKEY_CURRENT_USER\Software\Foxit Software\Foxit Reader\Recent File List.
(5)各类应用程序的遗留信息.现在大部分应用程序具有网络数据传输功能,通常本地缓存大量网络数据,如迅雷等下载软件缓存了正在下载的文件,从这些缓存的网络数据中也可以挖掘出用户的操作行为.应用程序可提取的遗留信息还包括应用程序记录的最近打开文件、应用程序的日志信息等.
逆向行为分析框架如图1所示,描述如下:
图1 主机行为分析框架
收集用户在主机上进行各种操作时遗留的各种信息(包括前面分析的各种遗留信息),如系统的日志文件、各类应用程序自己记录的各种日志、系统记录的访问文件的记录——Index.dat文件以及缓冲区文件、注册表信息以及特定软件的遗留信息等.
不同软件或系统遗留信息的格式是多种多样的.首先需要分析这些信息的保存格式,通过信息格式分析,提取出需要的遗留信息.由于这些遗留信息是各种各样的,需要对这些遗留信息进行归一化处理.
通过对已有信息的分析,根据本次分析用户行为的目的,所有提取的信息归一化为以下内容:文件名、访问方式、时间、行为等.文件名是指用户最近操作了哪些文件;访问方式是指用户对这些文件的操作方式是修改还是仅仅只读式打开;时间是指用户对这些文件操作的时间;行为是指用户通过运行哪些软件操作了这些文件.
信息归一化处理还包括对这些信息格式化统一后,形成一致的信息记录.由于遗留的信息保存于不同的位置,这些信息可能是重复的,也可能是有缺失的.
对于重复记录的处理,首先确定记录的优先级,用户不易修改的记录优先级最高,也就是最真实的记录具有更高的优先级;较详细、较准确的记录,优先级较高.对于重复记录,当文件信息不一致时,根据优先级确定采用那些记录.
仅仅获得最近操作的文件是不够的,还要知道通过哪些软件对这些文件进行了操作.在Windows的注册表中保存了不同扩展名文件的打开方式,在主键HKEY_CLASSES_ROOT下,保存了扩展名子键,这些扩展名子键中默认项键值保存了这些扩展名文件类型.如当系统安装了office系列软件时,HKEY_CLASSES_ROOT 下 “.doc”子键的 默认项 键值为“Word.Document.8”,表明扩展名为“.doc”的文件属于“Word.Document.8”类型文件.同时 HKEY_CLASSES_ROOT主键下还保存了这些类型文件的打开方式,在这些类型文件的子键下,有“\\shell\\open\\command”子键,这一子键的默认项键值就是打开这一类型文件的软件位置.如当系统安装了office系列软件时,“Word.Document.8”子键下“\\shell\\open\\command”子键的默认项键值为"C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE“/n/dde”,表明“Word.Document.8”类型文件的打开软件该为其下的WINWORD.EXE.
通过用户行为逆向分析技术分析操作系统的遗留信息,进而分析获取的遗留信息文件格式,并采用归一化技术,将主机用户所有遗留信息进行归一化处理,最后获得用户对主机的行为和操作.通过提取分析用户的活动,不但可以从中发现操作系统中存在的安全风险,也可以发现用户的犯罪行为.
[1]苟和平,冯百明,景永霞.遗留信息共享的一种实现方案[J].兰州理工大学学报,2007,33(6):93-96.
[2]王文奇,库金龙.基于主机的行为分析取证技术研究[J].中原工学院学报,2010,21(4):19-21.
[3]田飞,程慧芳.基于P2P网络的浏览器缓存协作系统的研究[J].计算机工程与设计,2010,31(22):4780-4786.
[4]吴清,吴顺祥.Index.dat文件结构解析[J].现代计算机,2008(12):35-38.
The Research on Inverse Direction Analysis for User Behavioral
WANG Wen-qi,LI Shi-xiao
(Zhongyuan University of Technology,Zhengzhou 450007,China)
By collecting and analysising the user’s legacy information in host,a inverse comprehensive analysised algorithm based on the user’s behavioral in windows system is designed.The behavioral and action of user is reconstructed in a given time by the algorithm.As the result,the illegal information may be found by these behavioral.
legacy information;inverse analysised algorithm;user’s behavioral
TP393.08
A
10.3969/j.issn.1671-6906.2011.05.008
1671-6906(2011)05-0031-03
2011-09-20
河南省科技攻关计划项目(082102210082;082102210092);河南省教育厅自然科学基金项目(2008B520045)
王文奇(1971-),男,河南安阳人,副教授,博士.