软件防篡改的安全稳健方法
1. 引言
在当今数字化时代,软件安全至关重要。为了防止软件被恶意篡改,我们需要采用有效的防篡改技术。本文将介绍一种结合随机块、刷新机制和防护机制的软件防篡改方法,并对其进行评估。
2. 代码刷新机制
- 传统刷新问题 :操作系统生成的周期性信号可触发代码刷新,但在恶意操作系统环境下,该信号可能被篡改,导致刷新机制失效。
- 新型刷新方案 :通过在运行时统计特定类型指令(如间接跳转)的数量,当达到阈值时触发刷新。具体步骤如下:
- 应用程序以训练模式运行,计算每秒执行的间接跳转平均数量。
- 根据该平均值的某个函数来触发刷新。
3. 系统评估
- 原型设计 :使用二进制重写和名为Strata的进程级虚拟机实现技术原型。具体操作如下:
- 原始应用程序与Strata库链接。
- 使用链接时二进制重写工具在程序代码中引入防护机制,并使用AES加密应用程序文本段。
- 评估基准 :使用SPEC CPU2000套件的C语言基准测试进行评估,性能相关绘图归一化到原生执行,并进行五次运行取平均值。
- 防护数量确定 :应用程序和虚拟机中插入的防护数量由启发式方法确定,公式为 (N =
超级会员免费看
订阅专栏 解锁全文

63

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



