存在于你应用内部的检测。
Root、模拟器、调试器、Hook 和篡改,是大多数移动欺诈的起点。Runtime 在应用运行时查找它们,响应方式由你的策略决定。
- 每项检测均可选择监控、警告、拦截或结束会话
- 策略随你的代码仓库一起版本化
- 每项检测都从监控模式开始
Runtime 检测什么
01
Root 与越狱
su 二进制文件、Root 管理器、可写系统分区和越狱痕迹,即操作系统防护已失效的环境。
02
模拟器与虚拟设备
模拟器与虚拟化特征,是大规模自动化滥用所用设备农场背后的环境。
03
Hook 与插桩
Frida server 与 gadget、Xposed 及类似框架,在应用运行时改写其行为。
04
调试器与跟踪
附加到运行中应用的调试器和跟踪器,以及流传在外的可调试构建。
05
篡改与重打包
签名不匹配、代码被修改,以及在他人设备上运行的重新签名副本。
06
策略与远程控制
按检测项选择响应方式,在支持的套餐中还可通过签名的远程策略修改,无需发布新版本。
从首次构建到强制执行
- 1
以代码形式定义策略
在 moatgator.yml 中声明要检测什么、如何响应,并像其他变更一样在 pull request 中审查。
- 2
从监控模式开始
应用只报告它本会采取的操作而不实际执行,让你在强制执行之前先看到真实影响。
- 3
放心地强制执行
把每项检测切换为警告、拦截或结束会话。如果出现误报,可用签名策略远程关闭。
runtime: # monitor | warn | block | end_session mode: monitor detect: root_jailbreak: warn hooking: block # Frida, Xposed debugger: block emulator: warn tamper: end_session remote_policy: signed # no release needed检测目录
Runtime 评估的信号,按其指向的攻击分组。
环境
- Root 与越狱迹象
- 模拟器与虚拟设备
- 不安全的设备状态
插桩
- Frida server 与 gadget
- Xposed 及类似框架
- 被 Hook 的系统函数
调试
- 已附加的调试器
- 进程跟踪
- 可调试构建
完整性
- 签名验证
- 被修改的应用代码
- 重新签名与重打包的副本
屏幕与输入
- 敏感界面上的覆盖层
- 无障碍服务滥用
- 屏幕截图与录屏
- 远程访问工具
常见问题
Runtime 需要 SDK 吗?
无需集成 SDK。检测通过 pull request 加入你的构建,策略保存在 moatgator.yml 中。
监控模式是什么意思?
应用只报告它本会采取的操作,但不实际执行,让你在强制执行之前先看到真实影响。
检测触发后会怎样?
由你的策略决定:记录、警告用户、拦截操作或结束会话。每个事件也会连同上下文上报到 Pulse。
不发布新版本也能修改策略吗?
可以。通过签名的远程策略,你无需发布新构建就能调低或关闭某项检测。
能检测 Frida 吗?
能:包括 Frida server 与 gadget,以及你的进程中的函数 Hook。没有任何单一检测是完美的,所以 Runtime 叠加多种信号,并与 Shield 搭配使用。
每个套餐包含哪些检测?
免费套餐包含五项检测,支持监控和警告模式。付费套餐包含所有模式下的全部检测,Scale 和 Enterprise 另含 Pix Shield。