检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:乐德广[1] 赵杰 龚声蓉[1] LE De-guang;ZHAO Jie;GONG Sheng-rong(School of Computer Science and Engineering,Changshu Institute of Technology,Changshu 215500,China;Suzhou Tongcheng Tourism Network Technology Limited Company,Suzhou 215123,China)
机构地区:[1]常熟理工学院计算机科学与工程学院,江苏常熟215500 [2]苏州同程网络科技股份有限公司,江苏苏州215123
出 处:《计算机工程与设计》2020年第11期3255-3261,共7页Computer Engineering and Design
基 金:教育部新一代信息技术产学研创新基金项目(2018A01003);教育部人文社会科学研究基金项目(18YJCZH068);江苏省自然科学基金面上基金项目(BK20191475);江苏省高校自然科学研究面上基金项目(18KJB520002)。
摘 要:针对控制流分析获取程序执行过程中的分支路径信息,引起路径信息泄露问题,提出能有效隐藏分支路径及其顺序的程序混淆算法。通过二态非透明谓词插入不相关分支路径和不相关结点,改变控制流中的单一结点形式,增加程序分支路径的控制流复杂度。将二态非透明谓词控制流平展化提高混淆强度,采用调度函数动态赋值算法对分支变量进行动态赋值,进一步隐藏分支路径顺序固定的控制流信息。实验结果表明,该算法能实现混淆程序的控制流逻辑关系,提高混淆强度,有效抵御程序的控制流分析。Aiming at the problem of path information leakage incurred by control flow analysis that can collect the branch path information during program execution,the program obfuscation algorithm that concealed branch paths and their order was proposed.Irrelevant branch path and node were inserted through bi-state opaque predicate,which changed the homogeneous control flow node,and improved the control flow complexity of program branch path.The control flow of bi-state opaque predicate was flattened,which increased obfuscation potency,and the branch variable was assigned dynamically using the algorithm of dyna-mical allocation with dispatch function,which concealed control flow information of fixed branch path order further.Test results show that the proposed algorithm can not only obfuscate internal logic of program control flow,but improve the strength of obfuscation significantly,which combat the control flow analysis of program effectively.
关 键 词:软件安全 程序混淆 控制流平展化 非透明谓词 分支路径
分 类 号:TP309[自动化与计算机技术—计算机系统结构]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.171