前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Crack App | yrx App 对抗赛第一题 Sign 算法的还原

Crack App | yrx App 对抗赛第一题 Sign 算法的还原

作者头像
咸鱼学Python
发布2022-06-24 14:30:26
4460
发布2022-06-24 14:30:26
举报
文章被收录于专栏:咸鱼学Python

图源:米游社

今日目标

aHR0cHM6Ly9hcHBtYXRjaC55dWFucmVueHVlLmNvbQ==

这次比赛果然是神仙打架,先是珍惜哥哥沙箱乱杀,然后是各路大佬神仙过招,我这菜鸡只能仰望了。

虽然没有参加,不过还是借了账号写写文章,瞻仰下各路大佬的风采(简称蹭蹭流量)

抓包分析

进入 App 第一题之后,可以抓到一下两个包,分别是timeapp1

time包返回时间戳

app1包返回页面上的数字

主要看app1包的请求

除了timepage之外还多了一个sign字段

这个sign就是分析的重点

加密定位与算法还原思路

取巧的方法

直接搜索关键词第一题直接跳到第一题的的逻辑里

然后可以看到sign的逻辑

直接点进sign看方法

frida hook看看参数和结果

代码语言:javascript
复制
console.log("脚本加载成功");
function main(){
    Java.perform(function() {
        var clazz = Java.use('com.yuanrenxue.match2022.security.Sign');
        clazz.sign.implementation = function() {
            console.log('find sign <======>');
            console.log("arguments 0 <======>",JSON.stringify(arguments[0]))
            console.log("result <======>",clazz.sign.apply(this, arguments));
            return clazz.sign.apply(this, arguments);
        }
    });
}
setImmediate(main)

这个时候已知入参为

具体的组成page=[page num]+time

再进入sign看下加密的逻辑

这就是sign的逻辑,其实就可以进行缺啥补啥了,扣出来java的代码,然后用python调用就行

这个是最方便快捷的,但是可能会卡在下面这个点

这里的OooO00o.OooO00o(-592855683721616730L)是个啥,跟进去看下

搁着套娃呢?

这要是扣岂不是人没了?

不过既然代码都找出来了,直接hook不就完事了呗。

hook 结果这里就是不变的,所以不用扣,直接固定%02x%02x%02x%02x就完事了

如果不会写,可以用jadx 1.3.5右键自动生成并复制frida片段

虽然说有时候会有一些小问题,但是cv起来很是丝滑

End.

以上就是全部的内容了,咱们下次再会~

我是没有更新就在摸鱼的咸鱼

收到请回复~

我们下次再见。

对了,看完记得一键三连,这个对我真的很重要。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 咸鱼学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 今日目标
    • 抓包分析
      • 加密定位与算法还原思路
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档