基于虚拟机框架的代码混淆技术研究

来源 :战略支援部队信息工程大学 | 被引量 : 1次 | 上传用户:ailing770
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件的逆向分析与保护永远处在相互博弈之中,一方面,传统的代码混淆技术已经不能抵抗目前功能强大的逆向分析软件;另一方面,采用虚拟机保护技术的软件使现有的动静态方法已基本失效。然而,随着虚拟机保护代码逆向分析技术的发展,采用单一虚拟化技术的基本虚拟机保护模型已经可被部分逆向还原。研究总结虚拟机逆向分析的关键环节与技术,并以对抗其中的指令约减技术、字节码反汇编技术与语义分析技术为着力点,深入研究探讨代码混淆技术与虚拟机代码保护技术,提出了两种有效的混淆算法,并设计实现了一个增强型虚拟机代码保护原型系统。本文完成的主要工作包括:1.为对抗指令约减技术,提出一种基于指令交换的指令乱序算法。首先在形式化定义的基础上论证了相邻指令序列交换的充分条件,并在此基础上采用模拟退火算法实现了具有一定随机性的指令乱序算法,并以解释函数为对象予以实现,通过理论分析与实验验证了混淆算法在对抗指令约减技术方面的可行性与有效性。同时,该指令乱序算法可拓展到传统代码混淆技术领域,可在不付出执行时间与文件大小代价的前提下,在一定程度上抵抗自动逆向工具分析以及人工逆向分析,并且增加样本的静态多样性。2.为对抗虚拟指令分析与语义分析,设计实现一种增强型虚拟寄存器轮转算法。关注虚拟指令与字节码的映射机制,以虚拟寄存器为突破点,通过在虚拟机解释执行过程中变换虚拟寄存器与字节码中操作数的对应关系,增大字节码在执行过程中的不确定性,改变虚拟指令与字节码的映射关系,增大了虚拟指令分析过程中从字节码映射到虚拟指令的分析难度,并有效增加了虚拟机在解释执行过程中的数据流复杂度;同时,随机采用三种机制对轮转长度进行设定,增强了虚拟机代码保护系统的多样性。3.设计并实现了一个软件保护虚拟机原型系统X86VM。基于系统的整体方案设计与总体实现的目标,利用分层和模块化的思想对系统内各个功能模块进行了详细的阐述,融入了上述两种算法,并基于测试用例进行了有效性验证和性能分析。实验结果表明,X86VM系统能够有效地对软件实施保护,降低对虚拟机保护代码逆向分析的效率。论文最后对全文工作进行总结,并基于提出的两种方法以及代码混淆技术领域的后续研究工作进行了展望。
其他文献
锂离子电池具有能量密度高、循环寿命长、记忆效应小、污染小等优点,被认为是未来存储电能的最有效途径。三维电极是当前锂离子电池领域研究的热点,与传统电极相比,它能为体
磷是植物生长所需的必要元素,参与了生物体内各种重要生命活动。高等植物主要通过根系以无机磷酸盐(Pi:PO43-,HPO42-,H2PO4-)的形式从土壤溶液中获得磷元素。因为土壤中的磷
科技进步推动人类社会不断的发展,为了满足人类生产生活的需求,各种便携式的电子设备、大功率电动机车、高功率的移动设备相继问世。目前,锂离子电池作为能源供应系统难以满
随着国家对环境保护力度加大,住建部《污水排入城市下水道水质标准》要求排入城市管网中废水总磷含量小于8 mg/L,某公司(以下简称NCFC)出厂废水中磷含量约为33mg/L,为了满足
配电网中含有大量单相居民负荷,受生活习惯影响,各个时刻居民负荷功率具有随机波动性,这种随机性将导致配电网三相负荷不对称进而引起三相不平衡问题。随着“屋顶光伏”工程
直接甲醇燃料电池(DMFC)因其绿色环保、燃料易得、操作安全、且具有优异的能量密度和高能量转换效率等优点,在便携式及可移动式设备上有广泛的应用前景。目前,DMFC中最常用的
研究背景:肥胖型哮喘是一种独特的哮喘表型,其症状重,对常规哮喘治疗反应差,病情反复,难以控制,其发病机制尚未完全阐明。研究发现,维生素D除了经典的维持钙磷平衡作用外,还
水稻作为世界上最主要的粮食作物,其产量提高受到广大的关注。理想株型可以通过提高水稻单产而增加水稻的产量。分蘖角度和分蘖数是水稻株型构成的两个重要要素,分别与水稻的
科技的发展使得信息在网络中大规模传播非常普遍,例如交通网络的发展促进了人口流动,社交网络使得信息的传播更加便捷和广泛等等,但同时也带了很多潜在的风险,如传染病的大规模传播,虚假新闻在社交网络上的大行其道,计算机病毒的感染等,因此如何准确检测出信息在网络中传播的源节点,对防止和控制风险的发生有着重要意义。信息源检测问题是指,通过观察到的被信息源感染的节点图和网络的拓扑结构,结合信息的传播模型,来推断
免疫系统监视肿瘤发生是肿瘤免疫治疗的逻辑基础,因此免疫系统对肿瘤抗原的识别能力是决定肿瘤免疫效果的关键因素。本文以小鼠结肠癌MC38细胞为研究对象,针对组蛋白的甲基化