期刊文献+
共找到10篇文章
< 1 >
每页显示 20 50 100
改进的基于底层虚拟机混淆器的指令混淆框架
1
作者 王雅仪 刘琛 +1 位作者 黄天波 文伟平 《计算机应用》 CSCD 北大核心 2023年第2期490-498,共9页
针对底层虚拟机混淆器(OLLVM)在指令混淆层面只支持指令替换一种算法,且仅支持5种运算符和13种替换方案的问题,设计了一种改进版的指令混淆框架InsObf,以加强OLLVM指令层面的混淆效果。InsObf包含指令加花和指令替换,其中指令加花首先... 针对底层虚拟机混淆器(OLLVM)在指令混淆层面只支持指令替换一种算法,且仅支持5种运算符和13种替换方案的问题,设计了一种改进版的指令混淆框架InsObf,以加强OLLVM指令层面的混淆效果。InsObf包含指令加花和指令替换,其中指令加花首先对基本块的指令进行依赖分析,然后插入叠加跳转和虚假循环两种花指令;指令替换在OLLVM的基础上,拓展至13种运算符,共计52种指令替换方案。在底层虚拟机(LLVM)上实现了框架原型后,通过实验表明,与OLLVM相比,InsObf在时间开销增长约10个百分点,空间开销增长约20个百分点的情况下,圈复杂度和抗逆向能力均可提高近4倍;与同样基于OLLVM改进的Armariris和Hikari相比,InsObf在同一量级的时空开销下,可以提供更高的代码复杂度。因此,InsObf可提供指令层级的有效保护。 展开更多
关键词 软件保护 代码混淆 指令混淆 底层虚拟机混淆器 指令加花 指令替换
下载PDF
基于符号执行的底层虚拟机混淆器反混淆框架 被引量:4
2
作者 肖顺陶 周安民 +2 位作者 刘亮 贾鹏 刘露平 《计算机应用》 CSCD 北大核心 2018年第6期1745-1750,共6页
针对Miasm反混淆框架反混淆后的结果是一张图片,无法反编译恢复程序源码的问题,在对底层虚拟机混淆器(OLLVM)混淆策略和Miasm反混淆思路进行深入学习研究后,提出并实现了一种基于符号执行的OLLVM通用型自动化反混淆框架。首先,利用基本... 针对Miasm反混淆框架反混淆后的结果是一张图片,无法反编译恢复程序源码的问题,在对底层虚拟机混淆器(OLLVM)混淆策略和Miasm反混淆思路进行深入学习研究后,提出并实现了一种基于符号执行的OLLVM通用型自动化反混淆框架。首先,利用基本块识别算法找到混淆程序中有用的基本块和无用块;其次,采用符号执行技术确定各个有用块之间的拓扑关系;然后,直接对基本块汇编代码进行指令修复;最后,得到一个反混淆后的可执行文件。实验结果表明,该框架在保证尽量少的反混淆用时前提下,反混淆后的程序与未混淆源程序的代码相似度为96.7%,能非常好地实现x86架构下C/C++文件的OLLVM反混淆。 展开更多
关键词 Miasm 底层虚拟机混淆器 反混淆 符号执行 指令修复 代码相似度
下载PDF
基于底层虚拟机的标识符混淆方法 被引量:1
3
作者 田大江 李成扬 +1 位作者 黄天波 文伟平 《计算机应用》 CSCD 北大核心 2022年第8期2540-2547,共8页
针对现有代码混淆仅限于某一特定编程语言或某一平台,并不具有广泛性和通用性,以及控制流混淆和数据混淆会引入额外开销的问题,提出一种基于底层虚拟机(LLVM)的标识符混淆方法。该方法实现了4种标识符混淆算法,包括随机标识符算法、重... 针对现有代码混淆仅限于某一特定编程语言或某一平台,并不具有广泛性和通用性,以及控制流混淆和数据混淆会引入额外开销的问题,提出一种基于底层虚拟机(LLVM)的标识符混淆方法。该方法实现了4种标识符混淆算法,包括随机标识符算法、重载归纳算法、异常标识符算法以及高频词替换算法,同时结合这些算法,设计新的混合混淆算法。所提混淆方法首先在前端编译得到的中间文件中候选出符合混淆条件的函数名,然后使用具体的混淆算法对这些函数名进行处理,最后使用具体的编译后端将混淆后的文件转换为二进制文件。基于LLVM的标识符混淆方法适用于LLVM支持的语言,不影响程序正常功能,且针对不同的编程语言,时间开销在20%内,空间开销几乎无增加;同时程序的平均混淆比率在77.5%,且相较于单一的替换算法和重载算法,提出的混合标识符算法理论分析上可以提供更强的隐蔽性。实验结果表明,所提方法具有性能开销小、隐蔽性强、通用性广的特点。 展开更多
关键词 软件保护 代码混淆 标识符混淆 底层虚拟机 混淆方法
下载PDF
基于动态分析的底层虚拟机混淆器反混淆方法
4
作者 寇宇 王其军 《计算机应用研究》 CSCD 北大核心 2022年第11期3465-3469,3474,共6页
底层虚拟机混淆器(OLLVM)是一个著名的代码混淆工具,除了用于保护商业软件的安全外,也被恶意代码的开发者所利用,以此增加分析难度。为便于安全研究人员对ARM恶意程序进行分析,提出并实现了基于动态分析的OLLVM自动化反混淆方法。对于... 底层虚拟机混淆器(OLLVM)是一个著名的代码混淆工具,除了用于保护商业软件的安全外,也被恶意代码的开发者所利用,以此增加分析难度。为便于安全研究人员对ARM恶意程序进行分析,提出并实现了基于动态分析的OLLVM自动化反混淆方法。对于虚假控制流,根据不透明谓词的内存特征监控内存读写并利用动态污点分析技术识别虚假控制流来完成反混淆;对于控制流平坦化,通过动态运行程序并记录基本块的执行顺序来完成反混淆;同时利用多执行路径构造来提高代码覆盖率,最后通过指令修复还原基本块之间的关系。实验结果表明,该方法可准确消除可执行程序中因混淆产生的条件分支,且反混淆后得到的程序其运行结果与未混淆的程序保持一致,能有效完成对ARM混淆程序的反混淆工作。 展开更多
关键词 反混淆 动态分析 指令修复 底层虚拟机混淆器
下载PDF
基于融合编译的软件多样化保护方法 被引量:2
5
作者 熊小兵 舒辉 康绯 《网络与信息安全学报》 2020年第6期13-24,共12页
针对现有主流保护方法存在的特征明显、模式单一等问题,以LLVM开源编译框架为基础,提出了一种基于融合编译的软件多样化保护方法,该方法将目标软件进行随机化加密处理,并在编译层面与掩护软件进行深度融合,通过内存执行技术,将加密后的... 针对现有主流保护方法存在的特征明显、模式单一等问题,以LLVM开源编译框架为基础,提出了一种基于融合编译的软件多样化保护方法,该方法将目标软件进行随机化加密处理,并在编译层面与掩护软件进行深度融合,通过内存执行技术,将加密后的目标软件进行解密处理,进而在内存中以无进程的形式执行,利用掩护代码的多样性、融合策略的随机性来实现目标软件的多样化保护效果。选取了多款常用软件作为测试集,从资源开销、保护效果、对比实验等多个角度对所提方法进行了实例测试,从测试结果可以看出,所提方法资源开销较小,相较于混淆、加壳等传统方法,所提方法在抗静态分析、抗动态调试等方面具有较大优势,能有效对抗主流代码逆向分析和破解手段。 展开更多
关键词 软件保护 多样化 融合编译 内存执行 底层虚拟机 中间表示
下载PDF
基于LLVM中间表示的数据依赖并行计算方法 被引量:1
6
作者 朱燕 衷璐洁 《计算机应用研究》 CSCD 北大核心 2020年第2期437-442,共6页
底层虚拟机(LLVM)是一个广泛使用的编译框架,其中间表示(IR)中包含有丰富的程序分析信息,众多以LLVM为平台的相关工作均以IR为基础开展。数据依赖关系在错误检测、定位及程序调试等领域有着重要应用,基于IR的数据依赖关系计算多采用串... 底层虚拟机(LLVM)是一个广泛使用的编译框架,其中间表示(IR)中包含有丰富的程序分析信息,众多以LLVM为平台的相关工作均以IR为基础开展。数据依赖关系在错误检测、定位及程序调试等领域有着重要应用,基于IR的数据依赖关系计算多采用串行迭代方式,但在应对较大规模IR文件时可扩展性不够理想。对此进行了数据依赖关系计算中指令读写的可并行性挖掘,结合图形处理器并行计算优势,提出一种基于LLVM IR的数据依赖关系并行计算方法DRPC。以IR为输入,采用CPU-GPU双端协同方式实现程序数据依赖关系的高效计算。实验结果表明,针对基准程序集SPEC,DRPC分别在直接及传递数据依赖关系计算上最高获得了3.48x和4.91x的加速比。 展开更多
关键词 底层虚拟机 中间表示 数据依赖 图形处理器 可扩展性
下载PDF
LLVM中静态程序信息的过程间分析方法 被引量:1
7
作者 莫培弘 衷璐洁 《计算机工程与设计》 北大核心 2018年第6期1610-1618,共9页
为有效解决静态程序分析中函数指针指向信息获取不够准确和库函数调用信息处理不够完善的问题,提出一种在LLVM平台下静态程序信息的过程间分析方法。利用过程内分析算法迭代获取过程内分析路径;利用过程间分析算法分析直接函数调用和函... 为有效解决静态程序分析中函数指针指向信息获取不够准确和库函数调用信息处理不够完善的问题,提出一种在LLVM平台下静态程序信息的过程间分析方法。利用过程内分析算法迭代获取过程内分析路径;利用过程间分析算法分析直接函数调用和函数指针,通过函数类型识别库函数调用,分析到函数指针时,进一步分析函数指针指向的真实信息,结合过程内分析形成最终的函数调用路径。用该方法解决上述问题,将实验结果与现有工具对比,验证了该方法能够更准确地获取函数指针指向信息并更好地处理库函数调用信息。 展开更多
关键词 底层虚拟机 静态分析 过程间 过程内 函数指针
下载PDF
AltiVec指令集模拟器的建模和实现
8
作者 于洋 蔡启先 李丹丹 《广西工学院学报》 CAS 2012年第1期49-54,共6页
指令集模拟器(ISS)是研究新处理器架构必不可少的方法,研究基于AltiVec指令集建立SystemC模型,提出利用底层虚拟机技术来实现AltiVec ISS.实验表明,该模式比目前实现ISS的几种方法,如解释型编译、静态型编译、动态翻译技术等性能更为优... 指令集模拟器(ISS)是研究新处理器架构必不可少的方法,研究基于AltiVec指令集建立SystemC模型,提出利用底层虚拟机技术来实现AltiVec ISS.实验表明,该模式比目前实现ISS的几种方法,如解释型编译、静态型编译、动态翻译技术等性能更为优化,且具有一定的灵活性. 展开更多
关键词 AltiVec指令集 SystemC建模 动态翻译 底层虚拟机
下载PDF
基于GPU的LLVM程序分析信息并行提取
9
作者 马冬冬 衷璐洁 朱敬茹 《计算机工程》 CAS CSCD 北大核心 2017年第10期23-30,共8页
LLVM中间表示(IR)中包含大量的程序分析原始信息,传统基于CPU的程序分析信息提取方法大多采用串行的循环迭代方式处理较大规模程序,可扩展性较差。为此,结合图像处理器(GPU)的通用计算优势,提出一种基于统一计算设备架构的LLVM平台程序... LLVM中间表示(IR)中包含大量的程序分析原始信息,传统基于CPU的程序分析信息提取方法大多采用串行的循环迭代方式处理较大规模程序,可扩展性较差。为此,结合图像处理器(GPU)的通用计算优势,提出一种基于统一计算设备架构的LLVM平台程序分析信息并行提取方法,在CPU上实现程序特征分析及IR预处理、存储结构设计及提取信息的可视化,在GPU上完成并行线程调度的程序分析信息匹配及提取工作。实验结果表明,该方法可提高LLVM平台程序分析信息的提取效率,与串行提取方法相比,最高可获得4倍的加速比。 展开更多
关键词 底层虚拟机 中间表示 程序分析 信息提取 图形处理器 可扩展性
下载PDF
基于动态符号执行的C代码缓冲区溢出检测 被引量:1
10
作者 张俊贤 李舟军 《北京邮电大学学报》 EI CAS CSCD 北大核心 2016年第B06期50-54,共5页
缓冲区溢出是C程序中众多安全隐患的根源之一,以C程序代码为目标对象,提出了一个基于底层虚拟机中间代码的缓冲区溢出检测工具Path Checker.该工具基于动态符号执行方法,使用无量词谓词公式刻画缓冲区操作的安全性质,并利用可满足模型... 缓冲区溢出是C程序中众多安全隐患的根源之一,以C程序代码为目标对象,提出了一个基于底层虚拟机中间代码的缓冲区溢出检测工具Path Checker.该工具基于动态符号执行方法,使用无量词谓词公式刻画缓冲区操作的安全性质,并利用可满足模型理论求解器技术检验缓冲区操作的安全性.实验结果表明,该工具能有效检测C代码中的缓冲区溢出漏洞,且易于推广至其他高级程序语言代码和其他类型安全漏洞的检测. 展开更多
关键词 缓冲区溢出检测 动态符号执行 可满足模型理论求解器 底层虚拟机中间代码插桩
原文传递
上一页 1 下一页 到第
使用帮助 返回顶部