基于IAT加密的加壳程序研究

被引量 : 0次 | 上传用户:aajilin
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件保护是软件开发中一个不可忽视的环节,由于软件发布后要面对众多逆向分析人员的研究,给要发布的软件加一层壳现在几乎成了保护软件的一个必要的步骤,加壳软件的目的就是为软件穿上一层“盔甲”以阻碍对其逆向分析,随着各种逆向分析工具和技术的不断发展,壳对抗逆向分析的能力就直接反映出了它的保护强度。现有的壳主要是用于保护Win32环境下的可执行程序、动态链接库、驱动程序等PE格式的文件,由于PE文件头中包含了很多重要的信息,为了尽量减少暴露在逆向分析人员面前的信息,加壳程序通常需要生成自己的PE文件头,并模拟操作系统对被保护的程序进行加载。逆向分析人员在对加壳保护后的程序进行分析时,会采用各种动态、静态的逆向分析工具,壳里就需要加入一些反逆向的手段来给他们增加一定的难度。壳除了对软件进行保护外,对自身也需要隐藏,由于常见的壳识别工具采用的是特征码检测的方式,所以在壳中加入多态变形技术来对抗特征码检测也是加壳程序编写过程中的一个重要步骤。本文首先论述了软件保护技术的发展及对软件进行加壳的重要性,阐明了本研究课题的特点及实用价值;然后,对加壳程序开发所需的基础知识及关键技术需要的理论进行了全面的介绍;壳的核心技术是反调试,它直接影响到壳的保护强度,强度高的壳通常是因为采用了一些未公开的私有的反调试手段,本文接下来通过逆向跟踪几款知名的保护壳后,揭露了它们所用的反调试手段,对它们各自的优缺点进行了总结并给出了一些建议,在壳的IAT加密部分提出了完全模拟系统API的思想;最后,通过对BPE32多态变形引擎源码的详细研究,构建出一个能为壳所用的微型变形引擎框架并实现了相关部分代码,并对对抗多态变形常用的启发式代码仿真检测技术进行了介绍,总结了相应的突破方法和部分代码。本文分析知名壳的反调试后整理出来的函数代码,可以直接用于加壳程序开发,在实际应用中可以根据具体情况灵活选择运用;实现的多态变形引擎框架经过扩充后也可以用在实际开发中。
其他文献
目的探讨外周血白细胞变化与冠心病动脉粥样硬化的关系。方法对119例冠心病患者行冠脉造影及外周血白细胞的测定,并与50例拟诊为冠心病而冠脉造影正常者进行对照研究。结果冠
废弃物填埋的实质,是采用土木工程的方法包封废弃物,将污染物的扩散控制在特定的区域及能够接受的水平之下。从这个意义上讲,垃圾填埋场的衬挚应具有极低的渗透系数和明显的
中国西北黄土高原农业粮食生产区因干旱贫瘠而广受关注。如何提高作物产量,同时维持土壤肥力和土壤质量成为这一区域农业发展的关键问题。为此,平凉农科所于1979年建立了高平
相对于指纹识别等传统生物特征识别,手指静脉识别是一种新兴的具有较好应用前景的生物特征识别技术。综述了手指静脉识别的基本原理和关键技术,包括手指静脉图像采集、预处理
目的:采用功能磁共振成像(functional magnetic resonance imaging,fMRI)技术对脑梗死并发运动性失语的患者进行研究,检测与词语联想任务相关脑区的激活特点及功能连接状态,
隧道开挖使得围岩应力重分布而产生拱效应,拱效应的作用范围与隧道支护结构设计的安全储备以及经济性密切相关,并且一直都是岩土工程界的一个重要研究课题。作者根据相似原理
土霉素(Oxytetracycline)是全球销量最大的抗生素之一,也是畜禽及水产养殖中被广泛应用的一种广谱抗生素,大量的应用已导致该药在环境中的残留,其残留不仅会引导耐药菌株的形
仪器仪表产品的总体发展趋势是传统的仪器仪表将仍然朝着高性能、高精度、高灵敏、高稳定、高可靠、高环保和长寿命的“六高一长”的方向发展;新型的仪器仪表与元器件将朝着
<正>货币政策是指中央银行为调控货币政策中介目标而采取的宏观政策手段,货币政策关注和调节的对象是货币供应量,即全社会总的购买力。随着我国经济的迅速发展,利率