一种基于文件过滤驱动和TrueCrypt的文件系统保护方案
2016-09-23孙小雨杨涛胡晓勤
孙小雨,杨涛,胡晓勤
(四川大学计算机学院,成都 610065)
一种基于文件过滤驱动和TrueCrypt的文件系统保护方案
孙小雨,杨涛,胡晓勤
(四川大学计算机学院,成都610065)
0 引言
随着计算机的广泛应用,大量的涉密数据都被存储在存储介质上面,所以我们对数据的安全性有了更高的要求,比起传统的应用层的Hook技术来保护数据的安全,基于Windows内核层的文件过滤驱动技术具有更加底层并且更加稳定和高效。
本文将介绍一种基于Windows文件过滤驱动技术和TrueCrypt加密虚拟磁盘的方法来保护计算机的信息安全,比起传统的透明加密技术来保护机密文件的方法,使用本文这种方法具有更加稳定,并且具有一定的防病毒的效果,因此,该方法是一个保护文件系统安全的一个创新方法,并且在实践中得到了满意的结果。
当前市场上比较流行的保障文件安全的方法主要以文件透明加解密技术为主要代表。透明加密技术是近年来针对企业数据保密需求应运而生的一种数据加密技术。所谓透明,是指对使用者来说是透明的,感觉不到加密存在,当使用者在打开或编辑指定文件时,系统将自动对加密的数据进行解密,让使用者看到的是明文。保存数据的时候,系统自动对数据进行加密,保存的是密文。而没有权限的人,无法读取保密数据,从而达到数据保密的效果。但是文件透明加密技术有很多严重的缺点:(1)容易损坏文件。由于在加密的过程中如果发生了断电或者系统故障那么文件就被永久性的损坏了,如果这份文件十分重要,这会给用户以毁灭性的打击。(2)文件透明加密技术由于对操作系统里面所有的规定文件都进行了加密,如果有权限的管理员想要对文件进行移植操作会变得十分困难,因为文件透明加密一般都是根据本机的硬件信息作为私钥进行加密,所以对于本机进行文档的浏览没有问题,但是移植到其他的机器上的文件就不能够被正常浏览,但是不方便有特殊需要时的必要的文件转移,文件透明加密技术在这方面不灵活。(3)文件透明加密技术只能够对本地的文件防止泄露,但是不具备抵御病毒和木马的功能。
针对上面市场上主流的文件透明加密的种种缺点,本文采用的基于文件过滤驱动技术和TrueCrypt的加密虚拟磁盘的方式来进行保护用户的机密文件,有效地解决了上述的问题,基于TrueCrypt成熟的磁盘加密技术,不会造成文件的损坏,基于Windows文件过滤驱动的重定向技术能够有效地防止木马病毒对计算机系统的破坏性,并且能够增强对文件转移的灵活性。
2 系统基础技术
以Windows文件过滤驱动技术和TrueCrypt这个开源的磁盘加密软件为主要技术组成一种全新的Windows系统下的文件保护系统以取代传统的文件加密保护模式。
1.1文件过滤驱动技术
在Windows操作系统当中,文件系统驱动程序(FSD,File System Driver)是用来管理磁盘上的文件的,它负责存储本地的数据,接收本地磁盘文件的打开、读取、写入、关闭等请求,通常这些请求来自用户进程,通过I/O管理器发送到文件系统。
文件过滤型驱动程序 (FSFD,File System Filter Driver)是叠加在文件系统驱动程序上的过滤型驱动程序,FSFD是针对FSD而言的。它运行于操作系统的内核模式,在系统内核驱动中假如新的层,在不影响上层和下层接口的情况下,能够截获到所有的文件系统请求,从而不需要修改上层的软件或下层的驱动程序,就可以加入新的功能。文件系统过滤驱动的目标是不活系统对文件的种种操作的行为,例如文件的创建、读写、改名,目录的创建、打开、枚举、改名、删除等操作。并且可以选择完成或者修改这些请求。正是由于这种能力,致使其应用在文件保护、文件透明加密、移动存储控制、杀毒软件、行为监控等诸多的安全方面。
文件过滤驱动在Windows系统中的位置如图1所示,从图中可以看出文件过滤驱动负责接收上层的IRP (I/O Request Packet)请求,处理后传递给下层对象。
图1 文件过滤驱动位置
1.2TrueCrypt虚拟磁盘
TrueCrype磁盘加密是一款免费并且开源的软件,它利用了目前普遍采用的虚拟磁盘技术和磁盘过滤技术来完成对数据的快速、自动加解密,所有存储在TrueCrypt虚拟磁盘上的文件都被进行了透明的加密。在虚拟磁盘正确加载以后可以像访问普通的磁盘分区一样访问它们,包括磁盘的格式化、创建文件夹、文件复制、文件粘贴、文件重命名等。进入TrueCrypt虚拟磁盘需要使用磁盘加密时候的密码,在输入了正确的密码以后,就能够解密加密的磁盘,就能够正常的使用TrueCtypt的虚拟磁盘。
TrueCrypt拥有三种不同方式的加密磁盘:①对整个磁盘进行加密。该方法是对整个磁盘,包括磁盘上的操作系统进行了加密,因此,每次进入操作系统之前都会进行密码的验证,如果密码验证成功,那么就能够进入系统,整个物理磁盘被TrueCrypt的磁盘过滤驱动透明解密,进而能够进入操作系统。②对磁盘分区进行加密。该方法比较对整个磁盘进行加密更加灵活,该方法对单个逻辑分区或者几个逻辑分区进行加密,这样就可以不对系统所在的分区进行磁盘加密,开机就可以不进行开机密码验证。③使用文件虚拟加密磁盘,这种方法最为灵活并且最为方便。该方法用文件虚拟出来一个磁盘,并且对磁盘进行读写都是使用透明加密的方式,这样对虚拟磁盘的各种操作,实际上是对这个虚拟磁盘文件进行操作。在不使用这个虚拟磁盘的时候,它以一个文件的形式存在,并且是加密的,不会被窃取信息。
2 系统实现原理
2.1文件过滤驱动技术
文件过滤驱动部分的核心技术就是写能够对文件进行重定向的过滤驱动,需要把编写带有文件重定向功能的过滤驱动挂载到没有被TrueCrypt加密的磁盘上,当开启了文件重定向保护以后,就能够对文件的读写进行重定向。具体实现如下:
(1)对普通的磁盘(除TrueCrypt加密盘)进行挂载文件重定向过滤驱动,并在TrueCrypt加密的磁盘设置一个tmp的隐藏文件夹,其他磁盘进行写文件时候,将其进行复制到该目录一个对应的目录下,以后对其他磁盘进行写操作实际上都是对该复制版的文件进行。当对文件进行读取的时候,首先会判断该文件在加密盘tmp文件夹下是否有对应的复制版本存在,如果有复制版本存在,就重新设置文件过滤驱动的IRP请求,让文件系统对tmp文件夹中对应的文件进行访问,如果tmp中没有对应的文件,那么就不更改IRP请求,让文件系统继续访问原来的文件,制造一个类似全局沙箱的文件系统。
(2)白名单的设置。对于一些大文件,如ISO、RMVB 和DLL等这些体积大,并且这些文件都是只读性的文件,正常情况下不会对这些类型的文件进行写入。因此,可以对这类文件类型设置成白名单,白名单的文件类型过滤驱动不会对其进行重定向处理,也不会进行复制操作,但是会禁止写入操作。这样就能够减少系统重定向和文件复制造成的系统性能的损失。
(3)缓存文件自动清空。当关闭过滤驱动以后,加密磁盘的tmp文件夹中的缓存文件会清空,这样下次开启过滤驱动以后又会是一个新的环境,文件没有被修改,达到了一个沙箱的保护目的。
2.2文件虚拟磁盘
使用TrueCrypt的文件虚拟磁盘功能,能够使用文件进行虚拟出一个虚拟磁盘,并且对虚拟磁盘进行读写都是进行快速透明加密的,因此,对该虚拟磁盘进行读写的文件将会被加密,关闭虚拟磁盘以后,虚拟磁盘将消失,只剩下一个加密的磁盘文件,使用起来十分方便,此种类型的虚拟磁盘也比较符合本系统的需求。
2.3系统的整合
应用层Ring3对文件虚拟磁盘和过滤驱动进行整合。具体的操作流程如下:
(1)应用层客户端输入TrueCrypt加密磁盘的密码,如果密码验证成功,开启虚拟磁盘,并将虚拟磁盘对应的设备符号传给过滤驱动。
(2)过滤驱动获取虚拟磁盘的符号以后,在虚拟磁盘下面创建tmp文件夹,并去读取文件类型白名单的文件类型,在Windows的内核中建立一个链表记录白名单文件类型格式。
(3)开启过滤驱动的文件重定向功能,开启模拟沙箱功能,实现对非虚拟磁盘的重定向和防止写入功能。系统的操作流程图如图2:
图2 保护系统的操作流程
3 结语
通过对该系统的性能进行了测试发现,在合理的进行了白名单设置,系统会损失15%左右的性能,但是能够达到全局的虚拟沙箱的功能保护Windows系统免受病毒和木马的破坏,并且提供的虚拟磁盘能够满足用户对敏感文件的存储功能。
使用这种方式实现的防泄密系统能够具有更好的兼容性,并且实现了全局的保护,兼具了系统还原的功能和文件保护的功能。这种方案改变了传统的透明加密系统对Windows系统防泄密和保护的垄断,并且相比较透明加密这种纯文件过滤驱动的方式,本方案采用了文件过滤驱动和磁盘过滤驱动两种方式,取长补短,结合了两种过滤驱动的优点,能够更加灵活和更加高性能的保护了企业用户的计算机安全。
[1]谭文,陈铭霖.Windows内核安全与驱动开发[M].北京:电子工业出版社,2015
[2](美)Jeffrey Richter.Windows核心编程.北京:机械工业出版社,2008
[3]张帆.Windows驱动开发详解[M].北京:电子工业出版社,2008.
[4](韩)李承远.逆向工程核心原理[M].北京:人民邮电出版社,2014.
杨涛,男,山东邹城人,本科助理工程师,研究方向为电力系统信息通信新技术应用、信息安全等领域
胡晓勤,四川内江人,博士
In recent years,with the rapid development of computer network,the importance to computer information security is becoming more and more increasingly being emphasized.Especially the government and enterprise internal information is particularly important.But the traditional antivirus software and Trojan Avira software effect is not good,to Trojan and virus behavior analysis and the characteristic database often because innovation virus exists,because without the latest feature library and behavior cause effect is not good.So we use a new virtual disk file system filter driver of file redirection and TrueCrypt protected mode on the user's confidential documents based on protection.
A File System Protection Scheme Based on File Filter Driver and TrueCrypt
SUN Xiao-yu,YANG Tao,HU Xiao-qin
(College of Computer Science,Sichuan University,Chengdu 610065)
1007-1423(2016)03-0077-04
10.3969/j.issn.1007-1423.2016.03.018
孙小雨(1988-),男,山东栖霞人,硕士,研究方向为网络信息安全
2015-12-15修改日期:2015-12-30
近几年,随着计算机网络的高速发展,对于计算机信息安全的重要性越来越被强调,尤其是政府和企业的内部资料显得尤为重要。但是传统的的杀毒软件和木马查杀软件的效果并不好,对木马和病毒的行为分析和特征库往往会因为创新性病毒的存在,因无最新的特征库和行为导致效果并不好,故采用一种全新的基于文件过滤驱动的文件重定向和TrueCrypt的虚拟磁盘的保护方式来对用户的机密文件进行保护。
信息安全;文件过滤驱动;重定向;TrueCrypt