[发明专利]文件至宿主文件中的捆绑方法和装置有效
申请号: | 201210421232.5 | 申请日: | 2012-10-29 |
公开(公告)号: | CN102982073A | 公开(公告)日: | 2013-03-20 |
发明(设计)人: | 马茂刚 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市浩天知识产权代理事务所 11276 | 代理人: | 靳春鹰;刘云贵 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 文件 宿主 中的 捆绑 方法 装置 | ||
技术领域
本发明涉及通信领域,具体涉及一种文件至宿主文件中的捆绑方法和装置。
背景技术
文件捆绑又可以称为文件隐藏,具体做法是在一个文件中捆绑其他的文件,以达到减少文件个数或隐藏部分文件的效果。其中,捆绑其他文件的文件称为宿主文件,被捆绑到宿主文件中的文件称为捆绑文件。
由于PE文件结构本身存在着很多冗余空间,因此,PE文件经常作为宿主文件,在其中捆绑其他文件。PE文件存在的通常比较大的空闲空间为:(1)相邻节表之间由于数据对齐所产生的冗余空间;(2)PE文件的最末的节表之后由于数据对齐产生的冗余空间。(3)PE结构中的DOS Stub是为DOS程序预留的,其只有当该文件在在DOS下执行时,才会发挥真正的作用。因此,在Windows平台下,DOS Stub完全没有作用,可以利用这部分的内容用来隐藏文件内容。(4)PE文件结构中的很多字段作为保留存在或者对可执行程序的执行没有影响,这部分的空间也可以用来隐藏文件内容,例如PE文件中的以下结构:MajorLinkerVersion、MinorLinkerVersion、ajorOperatingSystemVersion、MinorOperatingSystemVersion、CheckSum、SizeOfCode、SizeOfInitializedData以及SizeOfUninitializedData等。目前,在PE文件中捆绑其他文件时,首先需要寻找PE文件中的冗余空间,并计算出每个冗余空间的位置和大小,图1示出了对PE文件的冗余空间进行计算后得到的结果。从图1中可以看到,寻找到的PE文件中的冗余空间共有8处,其中,DOS Stub部分的空闲空间为264B,节表和节之间的空闲空间为3280B,最后一个节后面的空闲空间为3328B,另外,reloc(重定位表信息)节、rsrc(资源)节、idata(导入文件名表)节、rdata(只读的初始化数据)节以及text(.exe或.dll文件的可执行代码)节中也都存在着冗余空间,全部冗余空间的大小总共为17488B。
然后,根据冗余空间的总数量以及每个冗余空间的大小,将捆绑文件分割成若干个指定大小的子文件,其中,子文件的个数可以小于或等于冗余空间的总数量,子文件的大小与冗余空间的大小基本一致。
最后,将分割后的各个子文件按一定的算法分配到PE文件的冗余空间中。
但是,采用上述方式时,由于PE文件结构中的冗余空间容量较小且不连续,因此,比较适合对零散的小文件进行捆绑,通常无法对体积较大的文件进行捆绑。而且,由于PE文件结构中的冗余空间基本上都集中在PE文件的头部,因此,导致捆绑文件全部集中在PE文件的头部,信息量过于集中,因此,很容易被格式检查工具检测为异常进而报错,从而出现误报的情况。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的文件至宿主文件中的捆绑方法和相应的文件至宿主文件中的捆绑装置。
依据本发明的一个方面,提供了一种文件至宿主文件中的捆绑方法,宿主文件包括多个以一定顺序排列的用于存储数据的节,该方法包括:将待捆绑的文件转换为与宿主文件的格式相对应的捆绑文件,并生成捆绑文件的配置信息,所述配置信息包括:用于指示捆绑文件是否可执行的参数信息、用于在所述宿主文件中定位所述捆绑文件的位置信息,以及用于指示捆绑文件执行时的跳转地址的跳转指令;将捆绑文件以及配置信息存储在宿主文件的最后一个节中;根据捆绑文件以及配置信息,修改宿主文件的最后一个节的结构信息以及宿主文件的结构信息。
可选地,将待捆绑的文件转换为与宿主文件的格式相对应的捆绑文件的步骤之前进一步包括:对待捆绑的文件内容进行压缩和/或加密处理。
可选地,宿主文件还包括多个以一定顺序排列的用于存储节的结构信息的节表,则修改宿主文件的最后一个节的结构信息具体包括:修改宿主文件的最后一个节表中的信息,最后一个节表用于存储最后一个节的结构信息,其中,最后一个节表中的信息包括:节数据的大小,以及节数据的属性。
可选地,宿主文件的结构信息包括:宿主文件的文件大小以及宿主文件的入口函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210421232.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:纺丝机酸浴槽排风装置
- 下一篇:一种复合功能喷丝板