通过进程仿真和基于中间语言的程序分析检测加密函数
1. 引言
近年来,自动检测程序(尤其是恶意软件)中特定算法的工作显著增加。为解决算法检测问题,人们提出了许多方法,大多是启发式的。然而,尽管对二进制程序中的算法识别,特别是加密原语的检测兴趣日益浓厚,但仍缺乏能让研究人员高效检测的系统且便捷的方法。
我们提出了一种通用的加密函数检测方法,利用进程仿真和基于中间语言(IL)的程序分析,旨在实现快速、便捷和可扩展的检测。该技术的基本原理是去除不必要的运行时信息、简化分析过程并提供新扩展的接口。
1.1 主要贡献
- 轻量级进程仿真 :设计了进程仿真这一新颖的仿真技术,在宿主操作系统中运行程序,仅仿真待分析程序所需的系统组件,提供轻量级、高速且具备细粒度分析能力的仿真环境。
- 基于IL的程序转换 :引入中间语言作为分析媒介,解决动态程序模式匹配和分析问题,提高效率和准确性,同时获得平台兼容性。
- 灵活的模板匹配 :为分析人员提供开放接口,以IL形式编写不同算法的模板,仿真器在检测阶段动态加载模板并构建启发式规则。
- 基于模板的数据过滤和验证 :传统匹配方法可能验证所有运行时数据,测试大量无关数据。基于IL的分析器先将代码片段与模板匹配,过滤不匹配的代码片段数据,再由数据验证器检查匹配数据并进行精确的输入 - 输出验证,显著提高验证效率,将误报率降至可忽略水平。
2. 问题陈述
加密
超级会员免费看
订阅专栏 解锁全文
2万+

被折叠的 条评论
为什么被折叠?



