某电商App anti-token 签名计算方法 学学objection

一、目标

今天的目标是某电商App的签名 anti-token ,抓个包先:

main.png

TIP: v 5.44.1

二、步骤

老规矩,上jadx

jadx.png

今天好幸运,只有两处,范围缩小了。双击进去看看。

at1a.png

这里把 a2 的值赋给了 anti-token,a2的来处是

String a2 = SecureService.m8583a().mo9433a(a, Long.valueOf(longValue));

进入到 mo9433a 去看看,发现是一个接口类。

public interface ISecureService

显然是没法直接hook这个接口类的,所以换个思路,搜索下 "implements ISecureService" 看看谁实现了这个接口:

implecls.png

太棒了,找到了两个类,

com.aimi.android.common.service.d$a
com.xunmeng.pxxx.secure.s

就他们俩了,Hook之

objection

Objection 是一个基于Frida开发的命令行工具,它可以很方便的Hook Java函数和类,并输出参数,调用栈,返回值。

TIP: pip install objection

首先加载App,进入交互式分析环境。 objection -g 包名 explore

objection -g com.xunmeng.pxxx explore

然后Hook这两个类:

android hooking watch class 'com.aimi.android.common.service.d$a'
android hooking watch class 'com.xunmeng.pxxx.secure.s'

这样可以一次性把这两个类下所有的函数都Hook,方便咱们定位到底是哪个函数来做了 anti-token 计算

objection1.png

现形了,很明显是 com.xunmeng.pxxx.secure.s.a 函数,不过又遇到一个问题,a函数有好几个重载,而且也看不到他们的入参和返回值?

这时候就可以使用 android hooking watch class_method 来hook函数,并且打印出入参和返回值:

android hooking watch class_method 'com.xunmeng.pxxx.secure.s.a' --dump-args --dump-return

结果很美丽

rc.png

然后写个 js用frida搞一搞就行了。

三、总结

Objection可以方便的Hook一堆类或者函数,来缩小咱们分析的范围。它的功能很多,咱们后面再慢慢发掘。

nzqk.png

莫因渴望你没有的,而错过你已拥有的;要知道,你现在拥有的,也曾是你渴望的。

有问题可以加我wx: fenfei331 讨论下。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容