文档 · 用户指南
文档
用户指南
Anrix 是一个全平台应用加固 / 防盗版平台。上传你的应用 → 选择加固强度 → 用你的证书签名 → 下载或分发。本文说明支持什么、加固什么,以及不支持的格式怎么办。
诚实原则:本文如实标注每种能力的真实状态(已运行时验证 / 仅静态验证需真机 / 需你自己配合)。我们不夸大。
1. 支持的平台与格式
1.1 原生二进制(直接上传即加固)
| 平台 | 可上传格式 | 加固机制 | 运行时验证状态 |
|---|---|---|---|
| Android | .apk .aab | DEX 抽取加壳(密钥进 native 槽)+ 原生 .so 保护 + Live Key 动态派生 + 设备管理 | 已验证(红队 + 真机上报) |
| Linux | .so .elf 可执行 | 注入运行时保护库(反调试 / 完整性 / 字符串加密) | 已验证(篡改即强退) |
| Windows | .exe .dll | 注入运行时保护(装载即生效:反调试 / 完整性 / 上报) | 已验证(兼容层实测退出码) |
| macOS | .app .dylib | 注入运行时保护模块 + 重签名 + 完整性自检 | 静态验证;进程强退等运行时行为需 macOS 真机 |
| iOS | .ipa | 注入运行时保护模块 + 重签名(用你的证书) | 静态验证;反调试 / 越狱检测需 iOS 真机 |
1.2 跨端框架
| 框架 | 处理方式 |
|---|---|
| Flutter | 对 libapp.so 注入保护 + 段加密 |
| Tauri(桌面 / 移动) | 桌面走对应平台原生保护;移动走 apk/ipa 管线 |
| Electron / Cordova / Capacitor / uni-app / Weex / Taro / React Native | 原生外壳按平台加固 + Web 资源(JS/HTML/asar)混淆加密 |
跨端框架的运行期解密边界:我们能加密 JS/HTML/bundle 资源并把解密密钥下沉到 native 壳(明文密钥不落归档)。但要让 App 运行时透明解密,需 App 自身的 native 层调用解密接口(如 RN 的 JSI、Cordova 的 WebView 拦截)。这部分标注为
NEEDS_APP_NATIVE,属框架架构决定,非能力缺失。1.3 加固模块(可自由勾选强度)
- DEX 加壳:抽取原 DEX 加密,壳 ClassLoader 运行时解密加载。
- 反调试 + 反注入:检测调试器 / Frida / Xposed 等动态分析手段。
- 完整性校验:校验代码段 / 只读段哈希防二次打包(Windows 读磁盘映像避免误杀导入表)。
- 混淆:字符串加密 / 控制流平坦化 / 符号改名 / 花指令 / HTML·JS 混淆。
- SO 保护:原生 .so 段加密 + 深度混淆加固。
- VMP 虚拟化:将选定方法转为自定义虚拟机指令,运行时由内置解释器执行。
其它安全特性:SSL Pinning(原生实现 + 公钥固定,官方 CA)、密钥下沉 native(防静态提取)、设备指纹(服务端计算)、封禁强退。
2. 使用流程
- 新建应用(Apps)→ 填写名称 / 包名。
- 加固(Harden):拖入文件 → 平台自动识别 → 选加固等级(基础 / 标准 / 最强 / 自定义)→ 可选设备管理、Live Key。
- 签名:选择“自动 debug 签名”或上传你的平台证书(Signing)。
- 提交 → 任务入队 → 实时进度(解包 → 混淆 → 加壳 → 完整性 → … → 签名 → 上传)。
- 下载 / 分发:任务完成后下载产物,或生成 App-Store 式分发链接(APK)。
大文件:源包与产物直传对象存储,单文件支持到 5 GB。
3. 设备管理 / 防盗版(可选)
开启“设备管理”后,加固的应用会自动登记设备。在控制台你可以:
- 查看授权设备(型号 / 系统 / 运行时风险信号);
- 封禁 / 踢出设备:被封设备下次启动直接退出;
- 下发应用内通知;
- Live Key 动态派生:密钥每次启动实时下发,服务端只给中间派生料,设备本地实时恢复真实密钥(Android 已下沉 native,反编译取不到密钥)。
合规:PC 端采集系统信息用于指纹;Android / iOS 只做合法采集(ANDROID_ID / IDFV / IDFA),绝不采集 Wi-Fi SSID / MAC,不强行突破系统权限。
4. 不支持的格式怎么办(重要)
核心思路:加固“打包前的应用二进制”,而不是加固成品安装器。以下安装器 / 镜像容器目前不能直接上传加固,或只能部分处理。
4.1 Windows 安装器(NSIS / Inno Setup / 自解压 EXE)
编译后的安装器无法无损重封(需要原始打包脚本)。正确做法:
- 先把你的
.exe/.dll(应用本体)上传 Anrix 加固; - 下载加固后的 exe/dll;
- 再用你的 NSIS / Inno / WiX 脚本把加固后的文件打成安装器。
4.2 MSI 安装包 —— 已支持
上传 MSI → 解出被装 EXE → 加固 → 原位替换重封 → 内嵌 EXE 带保护。复杂自定义动作 / 压缩的 MSI 若无法重封会诚实标注(不假成功),此时按 4.1:加固 EXE 后用 WiX 等重新生成 MSI。
4.3 macOS DMG 磁盘镜像 —— 已支持(重封较脆,失败有兜底)
上传 DMG → 取出 .app → 加固 → 重封。DMG 在 Linux 侧重封较脆,若重封失败会保留原件并提示(不冒充加固)。此时用手动流程:
- 上传
.app(从 DMG 拖出)或其 zip → 下载加固后的 .app; - 在 macOS 用
hdiutil create -volname MyApp -srcfolder MyApp.app -ov MyApp.dmg重打。
4.4 macOS PKG 安装包 —— 已支持
上传 PKG → 解出 Payload → 定位 .app 加固(注入运行时保护)→ 重新打包重封。整包重签需你的证书(在 macOS 上或上传证书由平台重签)。
4.5 PyInstaller / py2exe(Python 打包)—— 内嵌字节码已加密
- 外层引导器(exe/elf/mach-o)上传即加固(反调试 / 完整性)。
- Python 字节码(.pyc)保护已实现:加密内嵌归档中的用户
.pyc与整个字节码区(AES-256-GCM,密钥下沉 native 防常量折叠)。解包得到的是密文,反编译失败,内嵌模块不可还原,静态搜索挖不到密钥。 - 完全透明的自运行需配套引导层补丁(
NEEDS_BOOTLOADER_PATCH):纯加密层已生效(静态防扒),让加密后的程序自解密运行需重建 / 补丁打包引导层(随产物附方案)。要源码级强保护也可叠加第三方 Python 源码加壳方案后再打包。
4.6 其它语言打包
.NET single-file / R2R、GraalVM native-image、Nuitka、Go、Rust、deno/bun compile、Java fat-jar、Node pkg/SEA、PHP phar —— 我们能识别 23 种格式。原生编译类(Nuitka / Go / Rust / GraalVM)本就是 native 二进制,上传即加固;自解压 bundle 类(含解释型代码)保护深度同 PyInstaller(native 壳 + 代码资源加密,透明解密需运行时配合)。
拿不准你的格式?上传后加固报告会如实告诉你「加固了什么 / 哪些没生效 / 建议怎么做」。我们绝不对未真正加固的产物谎报成功——内容没变会判失败并说明原因。
5. 已知边界(始终诚实标注)
- 动态保护库须与产物同目录分发:加固后的桌面产物会附带一个运行时保护库(Linux
.so/ Windows.dll/ macOS.app内Contents/Frameworks/*.dylib)。它是产物加载时自动装载的伴生文件,必须与被加固的可执行文件放在同一目录(或 .app 内原位)一起分发;缺失或被移走会导致加固后的程序打不开 / 启动即报错。打包分发(zip / 安装器)时务必一并带上。 - macOS 重签需解除 Library Validation:向启用 Hardened Runtime 的 App 注入第三方保护库后,加固会自动在重签 entitlements 中加入
com.apple.security.cs.disable-library-validation(并保留 App 原有 App Groups / Push / Keychain / 关联域 / iCloud 等能力),使系统允许加载该库。用你自己的证书重签时同样透传这份 entitlements。 - Windows 已签名 EXE 会失效签名:向已带签名的
.exe注入保护会使原签名失效。若你未在签名配置里上传代码签名证书(.pfx),产物将不带有效签名,报告会诚实标注——分发前请用你的证书重签,否则会触发 SmartScreen 警告或被 WDAC / AppLocker 拦截。 - macOS / iOS 运行时行为(进程强退、反调试、越狱检测、Gatekeeper)需真机验证;静态注入层已验证,Windows 已在兼容层实测。
- RN / Cordova / PyInstaller 透明代码解密需 App 自身 native 配合(
NEEDS_APP_NATIVE)。 - 浏览器上传 >100 MB 源包目前走有上限的通道;产物侧已支持大文件直传。
- 编译后的安装器(NSIS / Inno)不可无损重封 —— 按第 4 节「打包前加固」。
有问题请联系平台支持。