The reverse engineering based on path-sensitive techniques, such as symbolic execution and theorem proving, poses a new threat to software protection.This project researches novel binary branch obfuscation methods to protect software intellectual property. It includes: (1) to analyze the inherent nature of software path information leakage at runtime and point out the weaknesses of the existing code obfuscation methods, and research new protection methods by obfuscating the branch points and branch conditions; (2) to research the implementation of branch obfuscation using exception handling mechanism, remote trusted entity, unsolved mathematics conjectures, and one-way prefix-preserving algorithm to prevent path-sensitive reverse engineering; (3) to analyze and solve the security problems of the proposed branch obfuscation techniques; and (4) to analyze and promote of the resilience of the proposed branch obfuscation techniques and reduce their influences over software performance at runtime. Furthermore, this project will develop an automatic binary branch obfuscation prototype system..The goal of this project is to research branch obfuscation methods to protect software intellectual property and their corresponding implementation techniques and strategies, and propose new software protection techniques with independent intellectual property rights. Firstly, this project will improve the security of the software intellectual property against reverse engineering; secondly, this project will explore new technologies and methods to protect software intellectual property, and broaden research field of software protection.
针对基于符号执行和约束求解等路径敏感技术的逆向工程给软件安全带来的新威胁,研究二进制代码路径混淆方法,保护软件知识产权。具体包括:(1)分析软件路径信息泄漏的根源和现有代码混淆技术的不足,研究基于路径分支点和分支条件的路径混淆方法;(2)针对路径敏感的逆向工程攻击,研究路径混淆的实现技术,给出引入异常处理机制、远程可信实体、未解数学难题和单向保留前缀算法的路径混淆实现方法;(3)研究所提路径混淆自身的安全机制;(4)研究所提路径混淆抗逆向分析的性能及其对软件性能的影响。在此基础上,开发自动化的二进制代码路径混淆原型系统。. 项目研究目标是,提出一套基于路径混淆的软件知识产权保护思想与方法,研究相应的实现策略与技术,力求形成具有自主知识产权的软件保护新技术。一方面,提高软件的安全防护和对抗逆向工程的能力;另一方面,探索软件知识产权保护的新技术与新方法,丰富软件保护的研究内容与技术手段。
项目针对软件执行过程中的路径信息泄露问题和路径敏感逆向工程技术给软件知识产权保护带来的威胁,研究二进制代码路径混淆方法与技术。.项目完成的研究内容包括:.(1)研究路径分支点隐藏和路径分支网络化混淆方法,构建了基于路径分支点混淆的软件保护模型,提出了基于条件异常和可信实体的路径分支混淆方法与实现技术。.(2)研究路径分支条件混淆方法:引入Collatz猜想(也称3x+1问题)实现程序分支条件混淆;将哈希函数与保留前缀算法结合用于分支条件的混淆,拓展其在代码混淆中的应用范围。.(3)创造性地利用智能计算模型(如神经网络和支持向量机(SVM))的 “内部逻辑不可知性”进行程序分支条件混淆,实现软件分支信息的保护。进一步地,从上述基于智能计算模型的混淆方法的特点入手,提出了新的、具有重要应用价值的动态软件水印技术和指纹技术。.(4)利用返回导向编程(Return-Oriented Programming,ROP),一种常被用于恶意代码注入和执行的编程方法,探索了具有很好隐蔽性的软件水印方法及其实现技术。.此外,项目组还研究了恶意代码的分析技术,这些分析技术,可以反过来更好地促进代码混淆技术的研究。.上述研究成果,对于在对抗逆向工程时提高软件知识产权保护能力具有重要的意义,同时也丰富了软件保护技术的研究方法和技术手段。
{{i.achievement_title}}
数据更新时间:2023-05-31
硬件木马:关键问题研究进展及新动向
面向云工作流安全的任务调度方法
适用于带中段并联电抗器的电缆线路的参数识别纵联保护新原理
人工智能技术在矿工不安全行为识别中的融合应用
学术型创业企业发展路径探讨
虚拟化混淆代码逆向分析方法研究
白盒攻击环境下安全关键代码保护的广义混淆变换方法研究
二进制代码特征提取与智能分析
二进制代码多形态库函数快速识别研究