咨询与建议

看过本文的还看了

相关文献

该作者的其他文献

文献详情 >面向数据编程的代码语义隐藏研究 收藏
面向数据编程的代码语义隐藏研究

面向数据编程的代码语义隐藏研究

作     者:陈梁恒 

作者单位:华中科技大学 

学位级别:硕士

导师姓名:刘铭

授予年度:2023年

学科分类:0839[工学-网络空间安全] 08[工学] 

主      题:代码语义隐藏 代码复用 代码混淆 面向数据编程 控制流混淆 

摘      要:随着计算机技术的普及和信息化浪潮的不断推进,计算机软件已经深入到人们生产生活的方方面面。计算机软件的广泛应用促进了代码语义分析技术的快速发展,而作为对抗代码语义分析技术的有效手段,以代码混淆和代码加壳等技术为代表的代码语义隐藏技术也在快速迭代。在软件知识产权保护领域,代码语义隐藏技术正在核心算法语义保护、程序水印等方面发挥着越来越重要的作用。因此深入研究代码语义隐藏方案,研发新的代码语义隐藏体系,增强代码语义隐藏的效果十分必要。通过融合代码混淆中的控制流混淆和代码复用中的面向数据编程技术,提出一种新的代码语义隐藏方法。通过分析控制流混淆技术和面向数据编程技术在结构上的相似性,证明用面向数据编程技术约束对程序控制流的混淆流程,可以产生能够用面向数据编程技术缝合执行的新语义。使用此方法能够将新语义隐藏在处理后的程序中。通过对面向数据编程技术的内存操作进行语义划分与组合,分析其图灵完备性,证明此种方法可以用于隐藏复杂语义。通过对此种新型代码语义隐藏方法做出详细设计,构建起该方法的运行体系,并对其额外开销做出理论分析。该体系包含了被隐藏语义表达、可复用代码确定、语义安全区计算、语义执行区计算等运行步骤。通过设计一个验证系统,初步实现了该新型代码语义隐藏体系。通过可行性验证并与其它代码语义隐藏体系做出对比,证明使用面向数据编程约束控制流混淆对程序控制流进行变形,能够将特定语义通过代码复用的方式隐藏在程序中,此种代码语义隐藏方式具有能够对被隐藏语义进行等价变形、能够产生明显的指令等价转换和偏移、能够增加逆向分析人员获取语义的难度、开销稳定等特点。

读者评论 与其他读者分享你的观点

用户名:未登录
我的评分