C/C++程序的控制流混淆技术研究

被引量 : 4次 | 上传用户:ayhui2046
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着计算机技术的不断发展,计算机软件系统已经深入渗透到实际生活中的各个领域,若这些软件一旦遭受攻击,将给人类带来不可承受的损失。近年来,代码混淆技术作为软件保护的重要手段之一受到国内外研究者的重视。代码混淆技术是通过代码的混淆转换,增加程序静态分析与动态分析难度,从而阻止攻击者顺利实施逆向工程以提取程序的核心代码。现有的代码混淆技术主要包括词法混淆、数据混淆、控制流混淆和预防混淆等。其中,控制流混淆是最为有效且重要的一项代码混淆技术。本文在对当前主流的控制流混淆技术分析后发现,一方面,目前的控制流混淆方法都不能有效抵御切片攻击;另一方面,现有的控制流压缩技术不能有效保护派遣变量(控制流压缩后决定程序执行顺序的next变量)。基于控制流混淆的这两个问题,本文研究工作如下:1、针对程序切片攻击,本文提出了一种基于程序切片的控制流混淆技术。基于C/C++源程序的控制流分析,该技术通过计算程序的静态切片及冗余切片,对程序中需要保护的敏感信息片段进行变量编码、增加循环变量等混淆操作,增强程序的数据依赖关系,提高控制流程的复杂度,从而确保程序能有效抵御程序切片攻击。通过实验对基于程序切片的控制流混淆技术进行了正确性、混淆强度、耐受性的验证以及性能开销的分析。2、针对控制流压缩算法存在的缺陷,提出一种基于伪别名的控制流压缩算法。首先利用数组伪别名算法加密控制流压缩中的派遣变量(控制流压缩后决定代码块执行顺序的next变量),再根据C/C++指针的特性,提出了指针伪别名的不透明谓词构造算法,对控制流压缩后每个case语句中的控制块进行谓词插入,以对抗反汇编工具的攻击,使得攻击者无法重构控制流。在此基础上,用N皇后回溯算法对改进的控制流压缩技术进行了实验验证,并对其混淆性能进行了评价与分析。
其他文献
<正>人力资源社会保障信息化建设始于20世纪90年代,初期主要是使用单机版软件,依托小型局域网处理养老保险经办业务。随着我国社会保障制度的建立完善和信息技术的快速发展,1
目的:研究新生大鼠缺氧缺血性脑损伤(Hypoxic-ischemic brain damage,HIBD)后海马组织中神经元细胞的损伤情况,通过观察不同时间点及各组间细胞死亡、自噬相关蛋白的表达,初步探讨
近些年,随着我国经济、军事的不断发展,对多轴重型特种汽车的需求正迅速增长。多轴重型特种汽车,多采用大功率柴油发动机和多驱动轴的复杂动力传动系。当发动机的激励力矩频率与
目的:探讨经黏膜下隧道内镜切除术(submucosal tunneling endoscopic resection,STER)治疗来源于食管固有肌层肿瘤的疗效和安全性.方法:对23例经超声内镜和计算机断层扫描(compute
为了了解秦皇岛市商品蔬菜中的重金属污染状况,分别对蔬菜市场5类37种蔬菜共计518份蔬菜样品中As、Cd、Cr、Cu、Ni、Pb、Zn7种重金属元素的污染状况和健康风险进行分析。结果
水墨人物画的造型方式是影响绘画作品最重要、最直观的因素。随着水墨人物画的发展,其核心问题形神问题,即造型和神韵,也成为历代绘画理论家们研究的重点。造型艺术不只是一种视
我国十二五规划明确提出要加快人民币国际化的进程,作为金融领域的核心问题,人民币国际化不可避免的会对商业银行跨国经营产生重大影响。在此,本文引进耦合理论将人民币国际化和
中国烟草行业肩负着提高国民经济收入,促进经济增长的使命,是国家税收的主要贡献者,有“十有其一”的说法。随着经济全球化脚步的不断加快,中国烟草行业已经跨入了《世界烟草控
车联网是近两年从物联网中衍生出来的朝阳产业,以“感知”为核心的物联网技术应用于汽车后,正在开启一个汽车的智能化时代,车联网不但有助于全面提升我国信息产业综合竞争力,
随着我国经济的不断发展进步,居民个人可支配收入的提高,如何合理的规划个人财务,制定科学的理财规划以成为居民在生活中面临的主要问题。改革开放35年以来,我国金融市场发展