创建安全加固

应用的安全加固指对应用整体以及核心类进行加固,本节引导您完成创建加固任务的完整流程。

移动应用安全加固支持加固的对象包括:

  • APK/AAB 整体:对 APK/AAB 整体进行安全保护,提供 APK/AAB 防反编译保护、DEX 文件整体加壳保护、DEX 文件防篡改保护、防白盒攻击、壳加密算法保护、防调试保护、防内存篡改保护、防 Hook 保护、防模拟器保护、APK/AAB 防重打包保护、防内存 dump 保护。

  • 核心类:对 Java 代码进行混淆,隐藏真实运行流程,防止 jadx-gui、jeb 工具的反编译,使加固后的代码难以被人工直接阅读。

  • So 文件:对 So 文件进行加密防护,以增加破解 So 文件的难度和成本。

  • Assets 文件:对 Assets 资源文件进行加密防护,使其满足监管要求。

说明

对 APK/AAB 整体的加固是必需的,核心类、So 文件和 Assets 文件的加固是可选的,对 APK 可以根据需求加固项。

前置条件

在开始本任务之前,您需要先准备好待加固的应用,要求如下:

  • 文件格式须为 .apk.aab

  • 应用须未加固,移动应用安全加固不支持对已加固的安装包进行重复加固。

  • APK/AAB 包已有签名。在加固过程中会进行 APK/AAB 的防二次打包处理,因此上传的应用包需要有签名。

  • 如果要对应用中的 Assets 文件进行加固,则必须确保 minSdkVersion ≥ 21,即 Android 版本不低于 5.0。

  • APK/AAB 大小应 ≤ 300 MB。

重要

正式下单购买后的首次加固会自动绑定使用的包名,后续只能加固使用此包名的 APK,且绑定后不支持更换包名。试用期间没有此规则限制。

操作步骤

创建加固任务的操作方法如下。

  1. 进入 mPaaS 控制台,在应用列表中选择目标应用。

  2. 单击左侧导航栏中的 移动应用安全 > 应用安全加固,进入 应用安全加固 页面。

  3. 单击页面上的 创建安全加固,进入 上传待加固应用 页面。

  4. 单击 上传应用,上传待加固的安装包。上传过程中,单击页面上的 取消上传,可取消上传,上传待加固应用 页面将回到初始状态(即未执行上传操作时的状态)。

    说明

    当上传的 APK/AAB 不符合要求时,上传将会失败,此时,单击 重新上传 后,上传待加固应用 页面将回到初始状态。

  5. 上传成功后,页面跳转至 确认安全加固信息 页面,在该页面上,您需要完成以下操作:

    • 确认应用信息:在 应用信息 栏下查看应用信息。

      • 应用名称

      • 应用包名

      • 应用版本

      • 应用大小

    • 确认加固信息:在 加固信息 栏下,查看对 APK/AAB 整体提供的加固服务。

      • 加壳保护

      • AndroidManifest 文件防篡改保护

      • 签名文件保护

      • 防调试保护

      • 防原生应用调试

      • 防内存 dump 保护

      • 防模拟器运行保护

      • 防 Root 设备运行保护

      • 防内存数据读取保护

      • 防内存数据修改保护

      • 防 Hook 攻击保护

      • 防内存代码注入保护

    • 选择加壳模式:默认选择 快速模式

      • 快速模式:经该模式加壳后的应用启动速度较兼容模式加固后的应用快,但是在某些 Android 机型中可能会出现 Crash。

      • 兼容模式:经该模式加壳后的应用启动速度较快速模式加固后的应用慢,但是兼容性更高,加壳后的应用在运行过程中一般不会出现异常。

        说明

        推荐使用 兼容模式 对应用进行加壳。

    • 添加需要安全保护的类(可选):选择需要加固的类,操作方法如下。

      1. (可选)输入类名关键字,单击 搜索,搜索目标类。建议输入比较完整的类名进行搜索,当搜索结果超过 1000 个时,平台将无法展示搜索结果,此时,您需要输入完整的类名重新进行搜索。

      2. 单击与目标类对应的复选框,选择目标类。支持多选,最多支持 300 个类。

        说明

        已选择的类名会出现在搜索框下方,单击 ×,可取消选择对应类名。

    • 请选择要防护的 So 文件:选择需要加固的 So 文件,操作方法如下。

      1. 输入 So 文件名称中的关键字,单击 搜索,搜索目标文件。

      2. 单击待加固 So 文件前的复选框,可以选择一个或多个目标 So 文件。

        重要

        在选择待加固的 So 文件时不建议选择第三方的 So 文件进行加固,因为加固第三方的 So 文件以提升应用安全的意义不大,且容易产生兼容性问题

    • 请选择要防护的 Assets 文件:选择需要加固的 Assets 文件,操作方法如下。

      1. 输入 Assets 文件名称中的关键字,单击 搜索,搜索目标文件。

      2. 单击待加固 Assets 文件前的复选框,可以选择一个或多个目标 Assets 文件。

  6. 单击 确认加固,加固应用。 页面上显示 应用加固中 提示时,表示加固任务已创建完成。单击 查看加固列表 进入 应用安全加固 页面查看安全加固列表。列表中新增当前任务的卡片,在卡片中,您可查看任务的加固进度,并下载加固后的 APK/AAB。

后续操作