楼主: a智多星
589 0

结合机器学习与单向保留前缀加密算法的分支混淆方法 [推广有奖]

  • 0关注
  • 14粉丝

会员

学术权威

72%

还不是VIP/贵宾

-

威望
0
论坛币
15 个
通用积分
1.1414
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
38160 点
帖子
3814
精华
0
在线时间
830 小时
注册时间
2017-9-5
最后登录
2018-4-11

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
摘要:代码混淆技术是对软件进行保护的一种常用手段,它通过隐藏关键行为或对代码进行复杂化处理,使得程序更加难以理解,从而增加了攻击者逆向分析的难度。程序中包含了大量的分支控制信息。从二进制的角度看,它们以比较指令和条件跳转指令的形式出现,这些指令决定着程序的执行轨迹,逆向分析者可以利用暴露的分支控制信息获取程序的核心模块。因此,对程序的关键分支控制信息的保护尤为重要。<br>  当前,基于分支控制信息本身的混淆是混淆技术的一个难点,原因在于它们难于隐藏并且易于被反混淆工具进行逆向推理。基于前缀集合的单向保留前缀加密算法可以实现对分支的保护,但是由于求取前缀集合只能适用于正整数分支控制信息,同时在进行加密过程中容易暴露加密的长度,因此具有一定的局限性。本文提出了一种结合机器学习与单向保留前缀加密算法的分支混淆方法,分别利用人工神经网络和朴素贝叶斯分类器实现对分支控制信息的分类,从而使基于非等于关系的分支信息转化为等于关系的分支信息。在此基础上,利用单向保留前缀加密算法对分支两侧的变量或常量进行加密,该方案可以实现对实数域内任意的分支控制信息进行混淆,其逆向分析的难度等价于对单向函数的逆向计算以及对分类器的分类过程进行逆向分析。<br>  对于该混淆方案整体性能的评估,本文利用二进制分析平台 BitBlaze进行了抗攻击性测试,经过对程序进行动态跟踪以及静态分析,发现混淆后的程序无法利用约束求解工具推导出与输入路径相反的可行解,因此具有较强的抗攻击性。同时,对于程序执行的性能,本文利用标准测试集SPEC CPU2006中的程序作为测试样本,对程序中的独立分支信息或循环结构中的分支信息进行混淆。实验表明,分类器可以实现准确的分类效果,同时,在时间开销和空间开销等方面性能良好。因此,本文提出的混淆方案在不仅具有较高安全性,同时也具有一定的实用价值。

原文链接:http://d.wanfangdata.com.cn/Periodical/D796104

送人玫瑰,手留余香~如您已下载到该资源,可在回帖当中上传与大家共享,欢迎来CDA社区交流学习。(仅供学术交流用。)

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:机器学习 wanfangdata periodic wanfang 人工神经网络 机器学习 加密算法 前缀加密 混淆方法

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加JingGuanBbs
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-11 19:08