首页
社区
课程
招聘
[原创]逆向某4399分析过程
发表于: 2022-2-18 10:47 32014

[原创]逆向某4399分析过程

2022-2-18 10:47
32014

1.抓包报⽂分析 

1.1.charles抓包分析报⽂ 

登录和注册 发送验证码  都带有⼀个sign字段

其他参数都为固定参数 ⽐如请求头中的

只有这个sign每次都是变化的,那我们就开始分析这个sign


2.⽼规矩 

1.先查apk是否加固 查询发现没加固 

2.直接上jdax打开apk,能正常反编译

3.发现⽹络框架使⽤的okhttp 


3.代码分析 

1.因为使⽤的okhttp框架 那么⾃然直接搜索OKhttpClient 在哪被初始化 jadx直接搜索到

看名字猜测应该是⽹络核⼼⽗类,接着按x找到相关引⽤类 找到

看名字就猜到了http相关的⼯具类,接着继续找关键字sign ,因为⽹络相关的类都在framework包下的 helper⼦⽬录中所有随便翻翻找到⼀个



打开⼀看找到app相关的native⽅法都在这类中定义 按x找到相关引⽤的类中 有⼀个

看⽅法名就猜到了应该是计算sign的⽅法,打开看果然是



计算⽅法为

1.调⽤buildSignRequestParams(str,map)⽅法将请求参数赋值给hashMap,并将hashMap中的值按照 key进⾏排序,重新赋值给map

2.遍历排序后的hashmap的取出value进⾏拼接传递给buildSignValue()⽅法,调⽤native⽅法 ⽤frida Hook这两个⽅法调⽤也证明了这两点:


3.接下来开始分析native⽅法 getServerApi() 找到使⽤的so 包为libNativeHelper.so


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 10
支持
分享
打赏 + 80.00雪花
打赏次数 1 雪花 + 80.00
 
赞赏  Editor   +80.00 2022/03/23 恭喜您获得“雪花”奖励,安全圈有你而精彩!
最新回复 (8)
雪    币: 786
活跃值: (1621)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
支持。。。
2022-2-18 21:12
0
雪    币: 215
活跃值: (119)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
支持
2022-2-21 17:49
0
雪    币: 2194
活跃值: (1038)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
大佬强啊
2022-3-3 16:39
0
雪    币: 199
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5
666
2022-3-8 14:48
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
666
2022-3-8 20:56
0
雪    币: 20
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
666
2022-3-8 21:32
0
雪    币: 528
活跃值: (723)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
666
2022-3-23 22:57
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
你好,大佬,还有unidbg的工程源码吗?或者部分代码
2023-2-24 16:34
0
游客
登录 | 注册 方可回帖
返回
//