关于某app的sign值Hook不到的问题
本帖最后由 全拼 于 2023-5-8 07:01 编辑最近看了版主正己大大的逆向教程,自己手痒痒,就拿了个app练手,结果一下子踢到铁板了,想请教一下论坛内的大佬们,这是怎么回事?
首先上来很简单(本人手机已root,抓包很简单),fiddler抓个包,有sign值
正常思路先重放一下,发现哪怕timestamp和当前时间对不上也能返回值,目测sign值与timestamp相关
接下来就是拖入jadx,发现有25处"sign"值,基本一眼就能看到有md5加密的那一项,很自然的点进去,先静态分析,嗯,发现这两个东西分析不出来
https://attach.52pojie.cn//forum/202305/07/230753e5ajnezoeano20oo.png?l
,md,算了直接hook,掏出frida进行hook,hook代码如下
let SameMD5 = Java.use("com.mbridge.msdk.foundation.tools.SameMD5");
SameMD5["getMD5"].implementation = function (str) {
console.log('getMD5 is called' + ', ' + 'str: ' + str);
let ret = this.getMD5(str);
console.log('getMD5 ret value is ' + ret);
return ret;
};
接着问题就出现了,hook了这个加密函数,不管我怎么点击都没有任何输出,是我找的函数不对吗?还是参数加载在so层
https://attach.52pojie.cn//forum/202305/07/230924zmnx2oci8lytcine.png?l
app网盘链接:链接:https://pan.baidu.com/s/1m_JnEdDv1xMj7nZABcPEkQ?pwd=h8we
提取码:h8we
--来自百度网盘超级会员V3的分享
挺会挑样本,上来就是难度暴击的。
你找错地方了,reace native开发的app 核心代码在asset/index.android.bundle
但是现在一般都用facebook的hermes编译成了字节码,正经分析难度不是很小,建议先放弃{:1_918:} 脚本里面参数数量不对,你看方法原型是两个参数,你就写了一个参数 E式丶男孩 发表于 2023-5-7 23:31
脚本里面参数数量不对,你看方法原型是两个参数,你就写了一个参数
?不是一个参数吗?String md5 = SameMD5.getMD5(MBSDKContext.m8357f().m8352k() + MBSDKContext.m8357f().m8351l()); 用+号连起来了
全拼 发表于 2023-5-7 23:36
?不是一个参数吗?String md5 = SameMD5.getMD5(MBSDKContext.m8357f().m8352k() + MBSDKContext.m8357f ...
我看错了,要是有问题应该会报错的把,什么也没显示可能没走,你可以跳过去看看是不是native方法,或者试试rpc,随便传点什么看看 laos 发表于 2023-5-8 03:19
挺会挑样本,上来就是难度暴击的。
你找错地方了,reace native开发的app 核心代码在asset/index.androi ...
噗~~,还真有这个asset/index.android.bundle{:1_908:}大佬,能请教一下你是怎么看出来他是用什么编写的吗? SameMD5类就是本类吗?图片看不出啊…… 本帖最后由 全拼 于 2023-5-8 07:04 编辑
无闻无问 发表于 2023-5-8 06:55
SameMD5类就是本类吗?图片看不出啊……
大佬,我把图片更新了一下,自己感觉像是抓到了关键方法,这个方法可以hook,hook后自己传参,能实现md5加密 全拼 发表于 2023-5-8 07:02
大佬,我把图片更新了一下,自己感觉像是抓到了关键方法,这个方法可以hook,hook后自己传参,能实现md5 ...
信我的, 别在java代码一顿搜了, 去搞index.android.bundle
提醒: 可以使用hbctool反编译hermes字节码
页:
[1]
2