首页
社区
课程
招聘
[原创]乐校园跑协议分析
发表于: 2小时前 119

[原创]乐校园跑协议分析

2小时前
119

请求体主要是一个时间戳,和密文,猜测猜测一下是将时间戳做某种运算然后作为加密的key

然后通过simplHook工具定位一下,发现没有com.legym.security.NativeLib这个类,所以这个类可能是动态加载的,所以脱一下壳,就能看到了

根据调用栈大概率就是getDykey生成的密钥

写个frida hook一下

然后看一下JNI_OnLoad

看一下getDynamicKey

很简单的一个算法,并且hook一下看看结果,能对上

signDigital参数定位,点进去交叉引用

image-20260704100221500

image-20260704100257094

是一个native的函数,看到上面vmp调用特挺感慨的

image-20260704133734183

看一下so,发现加密了,dump修一下

image-20260704134033428

修好之后看一下静态函数

定位返回地址,可以看到是一个sha1符号都没有去

看到这一行很可能是进行一下加盐的操作,然后代码点进去发现还是加密的,所以直接hook SHA1 *__fastcall SHA1::finalize(SHA1 *this)

然后在内存中看见了明文,账号+密码+“1”+”itauVfnexHiRigZ6“,然后sha1

image-20260704142855866

请求一下,成功获得数据,而且后面也带了一个时间戳,猜一下加密和解密一样的逻辑,并且也进行了验证

image-20260704143316898

先看请求体

signTime定位,太久了忘了,不过基本操作应该都是hook跑步数据的构造函数,和set函数,以前一层一层跟的,这里直接给出答案了

直接还原,大概就是这样了

看下效果,非常的nice

image-20260704152042444


[内核课程]《Windows内核攻防实战》!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。

收藏
免费 11
打赏
分享
最新回复 (3)
雪    币: 31
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
1
2小时前
0
雪    币: 2213
活跃值: (2678)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
2333
2小时前
0
雪    币: 88
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
1
1小时前
0
游客
登录 | 注册 方可回帖
返回