# APP加固

本文只大致讲解 APP 加固的基本原理和推荐部分第三方加固厂商。致远官方不对外提供任何客开 APP 或第三方 APP 加固服务

# Android APP加固方案

Android APP加固的主要目的是通过一系列技术手段保护APP的代码逻辑和数据安全,防止被逆向分析、篡改、调试和数据泄漏。具体方案包括:

  1. 核心技术:

    • 防逆向:通过DEX加密、IVMP、源码混淆等技术对DEX和SO文件进行保护,防止被Apktool、IDA等逆向工具分析。
    • 防篡改:在加固时提取APP内文件的特征值,替换任意文件会导致应用无法运行,防止APP被反编译后植入恶意代码。
    • 防调试:使用多重加密技术防止代码注入,防止JAVA层/C层动态调试、代码注入和HOOK攻击。
    • 数据防泄漏:使用多种加密算法保护本地数据的安全,包括国际通用算法及自主研发的加密算法等。
  2. 主要功能:

    • 防逆向:DEX整体加密保护、DEX代码分离保护、DEX混合加密保护等。
    • 防篡改:DEX文件防篡改、SO库文件防篡改等。
    • 防调试:防动态调试、防内存代码注入等。
    • 数据防泄漏:防内存数据读取、防日志泄漏等。
  3. 第三方厂家:

    • 梆梆加固:提供Android应用的加固服务,包括DEX加密、资源文件保护等。
    • 360加固:另一家知名的Android加固服务提供商,具有相似的加固功能。
    • ipagurd加固:专注于Android应用的代码保护和反篡改技术。
    • 爱加密:另一家知名的Android加固服务提供商,具有相似的加固功能。

    当前移动办公M3 APP 标准产品就是采用的爱加密厂家进行的 APP 加固

# iOS APP加固方案

iOS APP加固的主要目标也是保护APP的代码逻辑和数据安全,防止被逆向分析、篡改和调试。具体方案包括:

  1. 保护原理:

    • 字符串混淆:对应用程序中使用的字符串进行加密,保证源码被逆向后不能看出字符串的直观含义。
    • 类名、方法名混淆:对应用程序的方法名和方法体进行混淆,降低源码可读性。
    • 程序结构混淆:对应用程序逻辑结构进行打乱混排,进一步降低源码可读性。
    • 反调试、反注入:采用主动保护策略防止调试和注入攻击。
  2. 第三方厂家:

    • VirboxProtector:基于虚拟机保护技术,提供iOS应用加固方案,无需启用Bitcode,无需替换Xcode编译器。
    • 其他专业加固公司:市面上还有其他一些专门提供iOS应用加固服务的公司,可以根据具体需求选择。
创建人:puwb
修改人:puwb