当前您所在的位置:首页>网络安全 漏洞扫描>网络安全

Guardant Armor

一款用于保护应用程序免受破解、逆向工程和非法使用的软件工具。只需几步点击,即可提供针对所有威胁的自动分层保护。

 

包含该产品的解决方案列表

 

 

 

优势

 

代码虚拟化

可将软件代码中的部分片段转换为唯一虚拟机指令系统,该虚拟机在应用程序保护过程中生成。

 

自动分析

基于静态与动态分析,提供受保护应用程序的优化功能列表。

 

防内存转储保护

防止受保护程序的可执行代码在内存中运行时被分析。

 

完整性控制

通过内置算法对代码进行校验,以检测是否被篡改。

 

许可授权

借助Guardant硬件和软件密钥,防止应用程序被非法分发和使用。

 

型号

 

Guardant Armor

(可按需定制)

防逆向工程保护

 

Guardant Protection Studio

(可按需定制)

 

 

Guardant Armor运作流程

 

保护流程

开发者选择程序中需要保护的功能,此操作可手动或自动完成。随后应用 Guardant Armor,对所选功能进行防逆向工程保护。最终输出为包含“剥离功能”的应用程序,以及一个以DLL库形式存在的特殊容器,其中包含受保护形式的功能代码。

 

所用技术

 

混淆(Obfuscation)是一套用于对受保护应用程序代码进行模糊化处理的技术组合。经其处理后,程序功能保持完整不变,但程序代码变得极为复杂,几乎无法进行分析。

 

代码变异是一种混淆方法,它会在原始控制流图中插入垃圾指令、分支、循环,甚至加入额外逻辑。经过这种混淆处理后,很难判断所分析的代码段究竟是原始程序还是无用代码。

 

代码虚拟化是一种混淆方法,它会将应用程序的原始机器码转换为在程序保护过程中生成的、独一无二的虚拟机指令。这些指令在程序运行时直接受解释执行。

 

该技术的特点在于,保护同一应用程序时,每次都会生成具有不同逻辑和指令集的新指令,并且这些指令只能在为其生成的那台虚拟机上执行。

 

虚拟化技术确保程序代码中不存在固定特征码,能够有效应对部署尝试、完整性校验等攻击手段。

 

外壳加密(Envelope)是对受保护文件片段进行打包和加密的过程。在受保护应用程序启动时,一个特殊的加载器会在控制权移交至原始入口点之前,对文件进行解压和解密。应用程序采用对称加密算法进行加密,其密钥通常存储于外部安全组件(硬件或软件密钥)中。

 

分析

若对代码的每个部分都应用混淆技术,应用程序的运行速度可能会明显下降。同时,攻击者完全不感兴趣的部分也会被保护起来。用于兼顾程序运行速度与重点代码保护的技术即为分析(Profiling)技术。受保护应用程序会经过全面的静态与动态分析,从而确定出最优的受保护功能列表。

 

虚拟化运作流程

代码虚拟化增加了对受保护应用程序进行逆向工程的难度,并提供高等级的防复制保护。

 

选中的代码片段被转换为唯一虚拟机的指令系统(字节码),以确保其在适当时机执行。生成的字节码被分块并进行安全加密。在执行过程中,计算机内存中仅保存执行所需的当前字节码块,从而有效防止应用程序被转储。

 

同时保护多个可执行文件的能力,可进一步混淆应用程序的执行逻辑。所有调用都被路由至一个统一的动态库,该库存储所有文件共用的字节码和虚拟机。同时,每个受保护文件均被打包和加密(即覆盖外壳)。

 

特性

 

支持的操作系统

 

 

受保护程序的编程语言

 

 

受保护文件

 

 

支持的 Guardant 密钥

 

北京哲想软件有限公司