一种ntfs文件系统下应用层文件隐藏方法

文档序号:6516614阅读:685来源:国知局
一种ntfs文件系统下应用层文件隐藏方法
【专利摘要】本发明公开了一种NTFS文件系统下应用层文件隐藏方法,属于信息安全领域。该方法基于应用层,不涉及系统内核,只需要在欲隐藏文件的主机上运行控制端程序。主要有两个模块,文件隐藏模块和文件恢复模块。其中,文件隐藏模块用于隐藏基于NTFS文件系统的文件储存介质中的文件,隐藏之后文件便独立于文件系统;文件恢复模块用于将隐藏的文件恢复到NTFS文件系统之中,显示出文件。本发明实现了NTFS文件系统下的轻量级文件隐藏,可操作性高,可以极大地提高信息的安全性以及保护数据的完整性。
【专利说明】一种NTFS文件系统下应用层文件隐藏方法
【技术领域】
[0001]本发明属于信息安全领域,具体涉及一种NTFS文件系统下的应用层文件隐藏方法。主要提供一种NTFS文件系统下的轻量级文件隐藏,使文件具有较高的安全性数据完整性。涉及的技术主要有:NTFS文件系统下的文件恢复技术。
【背景技术】
[0002]随着信息时代的发展,网络中传递的信息量呈爆炸式地增上,计算机被应用在各行各业,但是在信息增长以及计算机广泛应用的背后,所带来的安全隐患也不容忽视。处于工作需要或者方便的原因,人们将机密数据或者个人私密信息保存在计算机中,但是存在计算机中的文件是有一定的风险的,一方面,人们不希望其他人发现自己的隐私文件,另一方面更担心自己的私密文件被黑客窃取。目前,由于计算机上文件被窃取所造成损失的例子比比皆是。
[0003]对于信息的保护,传统的方式是采用加密技术,即把文件进行加密。加密技术与具体的操作系统无关,就是将要保护的文件通过某种加密算法加密之后以密文的形式储存在磁盘上,使用时再进行解密,从而得到保护文件的目的。但是加密技术有一定的局限性,它的保密强度依赖于所采用的加密算法和密钥的强度,而且一旦忘记密钥,恢复起来很困难。再者,加密也不能防止文件被窃取,一旦被窃取了,就存在被解密的风险。
[0004]还有一种文件隐藏方式是基于文件系统本身特性的隐藏,这种方式主要与文件系统相关,而不是依赖所运行的操作系统。对于NTFS系统,专利“基于NTFS磁盘文件系统结构的文件隐藏方法(申请号CN03118546.0) ”中提出了一种拷贝文件至根目录数据流再删除原文件的文件隐藏方式,但是这种方式有一个缺点:当文件较大时,速度较慢。
[0005]此外,专利“NTFS文件系统下轻量级文件隐藏方法(申请号:CN200910045412.6) ”中提到的一种直接在文件索引中删除要隐藏文件对应的索引记录的方法,可隐藏任意文件,且效率不受文件大小影响。但是该方法没有考虑数据被覆盖的情况,当文件记录被删除以后,SBitmap元文件的相应位会被标志为未使用,以后的文件将会覆盖之前隐藏的数据。

【发明内容】

[0006]针对上述现有技术的缺点,本发明的目的在于提出一种基于NTFS文件系统结构的文件隐藏方法,旨在解决文件隐藏的效率,安全性和数据完整性问题。
[0007]为解决上述问题,本发明采用如下技术方案:
一种NTFS文件系统下的应用层文件隐藏方法,其特征在于,分为两个模块,数据的隐藏模块以及数据恢复模块。
[0008]文件隐藏模块具体操作步骤为:
①遍历NTFS文件系统的MFT表,找到需要隐藏的文件在MFT表中的文件记录信息;
②根据第一步找到的文件记录信息,找到DataRun的数据,其中数据的起始逻辑扇区,所占用扇区大小等信息就存放在DataRun中;
③将以上信息写入一个自定义的Index索引文件,这个文件将用来进行文件数据的恢复,想要恢复文件只能通过Index文件,如果没有该文件,择不能恢复数据;
④将找到的文件记录项的Header-Flag标志置为O,表示该文件已被文件系统删除,该操作会使$Bitmap元文件内容改变; ⑤破换该文件记录,将该文件记录的信息清空,此操作是为了防止直接读取MFT表来进行数据的恢复;
⑥发送特定信息,使操作系统重新加载新的文件存储结构;
⑦根据DataRun的信息,修改$Bitmap元文件,此操作是为了防止隐藏的数据被后来的数据覆盖;
⑧伪造文件记录,新建N个虚假的文件记录,通过一定的算法合理设置DataRuns,使这些虚假记录的扇区包括欲要隐藏的文件扇区,此操作为了防止某些软件对$Bitmap文件和MFT表进行检查,有了这些虚假文件记录后,可以逃过完整性检查;
⑨取得并加密Index文件,返回执行结果。
[0009]数据恢复模块具体操作步骤为:
①根据Index文件,找到需要恢复的文件信息,包括文件名,文件大小,DataRun信息
等;
②根据DataRun以及文件大小从硬盘中读取数据;
③根据DataRun中的信息,修改$Bitmap元文件,将相应位置置为O ;
④修改Index文件中相应记录;
⑤取得恢复的文件,返回执行结果。
[0010]更进一步地,所有操作均是在应用层完成,不涉及系统内核操作;
更进一步地,文件的隐藏是将原本属于NTFS文件系统的文件独立于文件系统,并将文件信息存到其他地方(Index文件),其文件中的数据还存留在硬盘中;
更进一步地,文件隐藏以及文件恢复的核心都是文件的DataRun信息,该信息包括了文件数据在储存介质的起始逻辑扇区,以及占用扇区大小,通过该信息,可以从存储介质上直接读取数据;
更进一步地,文件的MTF表记录项被删除后,NTFS文件系统会将该文件在存储介质扇区数据视为可用,如果不进行处理,之后储存的文件有可能将数据覆盖,本专利的处理方法是:修改$Bitmap元文件,将隐藏数据的相应删除的位置为1,表示扇区已被占用。
[0011]更进一步地,本专利保护的思想为在应用层通过破坏NTFS文件系统的MTF表项、修改$Bitmap元文件,并通过该表项的DataRun来恢复文件,以此达到文件隐藏目的的思
本巨
ο
[0012]与现有技术相比,本方法具有如下优势:
一、隐藏速度快,可隐藏任意文件,对于不同大小不同类型的文件,都是通过操作MFT表中的文件记录信息来达到隐藏文件的目的的,所以即使大小和类型不同,速度都是一样;
二、可确保数据的完整性,对于$Bitmap的操作,可保证隐藏的数据不会被将来的数据所覆盖,因为在元文件中将对应扇区的标志置为了“已使用”; 三、可防止某些安全检查,SBitmap元文件在文件隐藏的检测中是一个非常敏感的文件,多数检测软件都会去检测这个文件,通过增加虚假文件记录则可以逃过某些检测。
【专利附图】

【附图说明】
[0013]图1是数据隐藏流程图;
图2是数据恢复流程图。
【具体实施方式】
[0014]下面将结合附图及【具体实施方式】对本方法作进一步的描述。
[0015]本NTFS文件系统下文件隐藏方法分为两个模块,数据的隐藏模块以及数据恢复模块。
[0016]文件隐藏模块具体操作步骤为:
①遍历NTFS文件系统的MFT表,找到需要隐藏的文件在MFT表中的文件记录信息;
②根据第一步找到的文件记录信息,找到DataRun的数据,其中数据的起始逻辑扇区,所占用扇区大小等信息就存放在DataRun中;
③将以上信息写入一个自定义的Index索引文件,这个文件将用来进行文件数据的恢复,想要恢复文件只能通过Index文件,如果没有该文件,择不能恢复数据;
④将找到的文件记录项的Header-Flag标志置为0,表示该文件已被文件系统删除,该操作会使$Bitmap元文件内容改变;
⑤破换该文件记录,将该文件记录的信息清空,此操作是为了防止直接读取MFT表来进行数据的恢复;
⑥发送特定信息,使操作系统重新加载新的文件存储结构;
⑦根据DataRun的信息,修改$Bitmap元文件,此操作是为了防止隐藏的数据被后来的数据覆盖;
⑧伪造文件记录,新建N个虚假的文件记录,通过一定的算法合理设置DataRuns,使这些虚假记录的扇区包括欲要隐藏的文件扇区,此操作为了防止某些软件对$Bitmap文件和MFT表进行检查,有了这些虚假文件记录后,可以逃过完整性检查;
⑨取得并加密Index文件,返回执行结果。
[0017]数据恢复模块具体操作步骤为:
1、根据Index文件,找到需要恢复的文件信息,包括文件名,文件大小,DataRun信息
等;
2、根据DataRun以及文件大小从硬盘中读取数据;
3、根据DataRun中的信息,修改$Bitmap元文件,将相应位置置为O ;
4、修改Index文件中相应记录;
5、取得恢复的文件,返回执行结果。
【权利要求】
1.一种NTFS文件系统下应用层文件隐藏方法,其特征在于,包括数据隐藏方法以及用于隐藏数据恢复的数据恢复方法, 所述的文件隐藏方法具体步骤为:第一步,遍历NTFS文件系统的MFT表,找到需要隐藏的文件在MFT表中的文件记录信息;第二步,根据上述第一步找到的文件记录信息,找到Data Run的数据;第三步,将以上信息写入一个自定义的Index索引文件,这个文件将用来进行文件数据的恢复;第四步,将找到的文件记录项的Header-Flag标志置为O,表示该文件已被文件系统删除;第五步,破坏该文件记录,将该文件记录的信息清空;第六步,根据Data Run的信息,修改$Bitmap元文件;第七步,伪造文件记录,新建若干个虚假的文件记录;第八步,取得并加密Index文件,返回执行结果; 所述数据恢复方法具体步骤为:第一步,根据Index文件,找到需要恢复的文件信息,包括文件名,文件大小,Data Run信息;第二步,根据Data Run以及文件大小从硬盘中读取数据;第三步,根据Data Run中的信息,修改$Bitmap元文件,将相应位置置为O ;第四步,修改Index文件中的相应记录;第五步,取得恢复的文件,返回执行结果。
2.根据权利要求1中所述的一种NTFS文件系统下应用层文件隐藏方法,其特征在于:所有操作均是在应用层完成。
3.根据权利要求1中所述的一种NTFS文件系统下应用层文件隐藏方法,其特征在于:文件的隐藏是将原本属于NTFS文件系统的文件独立于文件系统,并将文件信息存到Index文件,其文件中的数据存留在硬盘中。
4.根据权利要求1中所述的一种NTFS文件系统下应用层文件隐藏方法,其特征在于:文件隐藏以及文件恢复的核心都是文件的DataRun信息,该信息包括了文件数据在储存介质的起始逻辑扇区,以及占用扇区大小,通过该信息从存储介质上直接读取数据。
5.根据权利要求1中所述的一种NTFS文件系统下应用层文件隐藏方法,其特征在于:文件的MTF表记录项被删除后,NTFS文件系统会将该文件在存储介质扇区数据视为可用,修改$Bitmap元文件,将隐藏数据的相应删除的位置为1,表示扇区已被占用。
【文档编号】G06F21/60GK103544443SQ201310511564
【公开日】2014年1月29日 申请日期:2013年10月28日 优先权日:2013年10月28日
【发明者】张小松, 牛伟纳, 李金栓, 陈瑞东, 王东, 杨高明, 冀风宇 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1