当前位置: 首页 > news >正文

Paytm 开始全面接入 Google Integrity:UPI 自动化行业正式进入“设备风控时代”

今年以来,越来越多的印度 UPI 应用开始接入:

Google Play Integrity 完整性校验体系

其中:

Paytm 就是典型代表之一。

因此,在实际逆向与安全研究中,

核心问题已经不再只是:

“协议如何构造”

而是:

“如何对抗 Google Integrity 检测体系”。


一、Google Play Integrity 校验原理

Play Integrity 本质上是:

Google 基于 GMS(Google Mobile Services)构建的一套设备可信度验证机制。


1. 基本工作流程

APP 通常会:

APP ↓ 通过 Binder 与 GMS 服务通信 ↓ 发送 nonce(随机挑战值) ↓ GMS 返回 Integrity Token ↓ APP 上传 Token 至业务服务器 ↓ 业务服务器再向 Google 服务器校验 Token

最终判断:

当前设备环境是否可信。


2. 核心通信特点

Play Integrity 机制通常涉及:

  • GMS 跨进程通信
  • Binder IPC
  • 与 Google 服务端联网校验
  • Token 签名与加密
  • Runtime 环境检测
  • 设备完整性验证

3. 当前研究重点

在实际研究中,重点通常包括:

  • Binder 通信过程
  • nonce 构造方式
  • Token 返回结构
  • GMS 与 Google 的交互
  • 加密与签名逻辑
  • 如何影响 GMS 获取到的设备环境信息

4. 常见 GMS 组件来源

部分研究环境中会使用:

  • BiTGApps
  • NikGApps

等模块化谷歌套件。

通常通过:

  • Magisk
  • KernelSU

进行安装与管理。


二、设备环境检测维度

当前 UPI APP 对设备环境的检测已经非常全面。


1. 系统与 Root 环境检测

常见检测项包括:

  • Bootloader 是否解锁
  • 是否 Root
  • Magisk 环境
  • 调试状态
  • USB 调试开关
  • 开发者模式
  • Frida / Hook 环境

2. 网络与地区环境检测

通常会检测:

  • VPN
  • 代理
  • TLS 指纹
  • IP 地址
  • IP 地区
  • Wi-Fi Proxy
  • DNS 环境

3. 设备与身份信息检测

包括:

  • Android ID
  • DRM ID
  • Device Fingerprint
  • SIM 卡状态
  • 地区语言
  • ROM 版本
  • 系统版本
  • 安装应用列表

4. 静态与动态检测

静态检测:

  • 软件环境
  • 硬件环境
  • 网络环境
  • 文件系统

动态检测:

  • Runtime 环境
  • 内存扫描
  • 进程空间扫描
  • 动态代码检测
  • Hook 检测
  • 注入检测

三、Paytm 典型检测机制

以 Paytm 为例,

目前最核心的两个检测方向包括:


A. 硬件 TEE 层检测

主要依赖:

Google 硬件级 Key Attestation

部分研究环境中,会通过:

TrickyStore

模拟旧设备环境。

其核心思路是:

使用旧设备指纹, 让 Google 认为: “当前设备属于不支持硬件 TEE 的旧机型”

从而降低硬件级校验强度。


B. 软件层完整性检测

软件层通常涉及:

  • Fingerprint
  • Build 信息
  • 系统属性
  • ROM 环境

部分研究环境会结合:

Play Integrity Fix

修改设备指纹相关属性。


四、历史版本中的典型案例

在部分历史版本中,

曾出现:

服务端未严格校验 Integrity Token 的情况。

例如:

在某些早期版本中,

请求 OTP 时即使缺失 Integrity Token,

服务端仍可能继续处理请求。

其本质原因是:

服务端没有强制校验 Token 字段存在性。

而在后续版本中:

相关校验逻辑已经逐步加强。


五、常见研究工具链与组件

在 Android 安全研究中,

通常会使用如下组件组合构建测试环境。


1. KernelSU

作用:

  • 内核级 Root
  • 模块加载
  • init_boot 镜像制作

2. Magisk

作用:

  • Android Root 框架
  • Boot 镜像修改
  • 模块管理

3. Zygisk

作用:

  • 注入 Zygote
  • Runtime Hook
  • Magisk 模块依赖环境

4. Shamiko

作用:

  • 隐藏 Root 环境
  • 隐藏 Magisk
  • 隐藏 Zygisk 痕迹

通常配合:

Zygisk 配置列表

使用。


5. LSPosed

作用:

  • Android Hook 框架
  • 模块管理与启用
  • Java 层 Hook

6. HMA(Hide My Applist)

作用:

  • 隐藏安装应用列表
  • 对指定 APP 隐藏 Root 工具

例如:

对 Paytm 隐藏:

  • MT 管理器
  • Magisk
  • Frida 工具

7. TrickyStore

作用:

  • 模拟旧设备环境
  • 影响硬件级完整性校验

通常会配合:

  • keybox.xml
  • pif.json

等配置文件使用。


8. Play Integrity Fix

作用:

  • 修改 Fingerprint
  • 修改系统属性
  • 影响软件层完整性判断

9. BiTGApps / NikGApps

作用:

  • 模块化安装 GMS 套件
  • 提供 Google 服务环境

10. Applist Detector

作用:

用于验证:

应用隐藏是否成功。

通常作为:

HMA / Shamiko 配置效果检测工具。


11. Momo

作用:

  • Root 检测
  • Magisk 环境检测
  • Hook 环境检测

12. Riru

作用:

早期 Hook 框架。

目前大多已被:

Zygisk

替代。


13. Play Integrity API Checker

作用:

检查:

设备 Integrity 状态是否通过。


14. Key Attestation 工具

作用:

验证:

  • 设备 Bootloader 状态
  • 硬件级完整性状态

15. MagiskFrida

作用:

系统级加载 Frida。

可配合:

Shamiko

降低检测概率。


16. Enable Screenshot / DisableFlagSecure

作用:

允许:

禁止截图的 APP 被投屏或截图。

方便:

  • 调试
  • 研究

17. TrustMeAlready

作用:

强制 APP 信任用户证书。

常用于:

HTTPS 抓包研究。


18. Move Certificates

作用:

将用户安装证书移动为:

“系统证书”

降低被 APP 检测的概率。


19. KsuWebUI

作用:

KernelSU 管理界面。


六、当前行业变化趋势

目前 UPI APP 的安全策略已经从:

“简单 Root 检测”

升级为:

“设备级 + 行为级 + Runtime 级”
联合风控。


因此:

现在真正困难的,

已经不是:

“是否能抓到数据”

而是:

“研究环境能稳定存活多久”。


这也是为什么:

越来越多研究开始关注:

  • Runtime 环境隔离
  • 设备行为模拟
  • Integrity 绕过
  • Hook 隐藏
  • 真机环境控制

等方向。

因为:

UPI 自动化行业,已经正式进入“设备可信度时代”。

欢迎技术交流 :https://github.com/upi-research-lab/india-payment-upi

http://www.jsqmd.com/news/855185/

相关文章:

  • 电磁炉电源保护:压敏电阻工作原理、选型与故障排查全解析
  • Hermes Agent 框架接入 Taotoken 自定义供应商指南
  • Spring AI MCP网关实战项目
  • SystemVerilog测试套件从IP到SoC的重用:架构设计与工程实践
  • Ps 去除双下巴的最好方法,5 分钟无痕修复
  • RabbitMQ工作模式实践
  • BGA底部填充胶:嵌入式主控板可靠性设计与工艺全解析
  • C++哈希介绍
  • C#学习笔记-入门篇
  • Perplexity写作辅助响应延迟骤增?紧急修复指南:5步定位模型层瓶颈(含实时诊断脚本)
  • 深入解析中断与异常:从概念到x86/ARM/RISC架构实践
  • 非 CTP 柜台连接天勤:众期融航易达等网关差异备忘
  • 超实用!PS 修改截图文字最简单方法,自然无破绽
  • 香橙派Lite全解析:从硬件到应用,玩转ARM开发板与物联网项目
  • 保姆级教程:用Python+OpenCV实现无人机吊舱图像与卫星地图的自动匹配(附代码)
  • uni-app项目上架前必做:手把手教你用Android Studio生成正式签名APK(从证书到发布)
  • 在ai应用开发中利用taotoken实现多模型聚合与成本优化
  • CAN总线接口电路设计实战:从差分信号原理到PCB布局避坑指南
  • 视频融合平台:服务正常运行但没有画面
  • 硬件研发必看:钡特电源 DF2-15S03XT 与金升阳 F1503XT-2WR3 属工业标准模块电源封装与性能
  • AI提速中国品牌全球化:供应链、组织、营销、本地化全面升级!
  • S32K3 FlexCAN驱动避坑指南:从波特率计算到邮箱锁定的实战心得
  • VCSA 8.0部署卡在初始化VCS服务、认证失败?NTP+DNS一招解决
  • COLMAP重建翻车实录:当你的相机内外参已知,却卡在database.db和images.txt对不上?
  • Java Snowy框架CI/CD云效自动化部署流程
  • Skeyevss 视频调阅使用说明
  • 16位微控制器:电池供电与物联网节点的性能功耗平衡之道
  • 3.1 vss-performance 多协议监听与SIP发送流水线异步化
  • Perplexity音乐搜索效率提升300%:实测5种专业级查询语法与避坑清单(附2024最新API响应数据)
  • CPU、MPU、MCU与SoC:从核心概念到实战选型全解析