今天我们要分析的app 是大润发优鲜, 版本号1.4.0,小伙伴们可以去各大应用商定自行下载,软件使用360壳且混淆,APP校验了HTTPS证书,需要使用xposed的JustTrustMe模块。

参考链接:https://core.vivcms.com/2020/08/14/420.html,
转载请注明出处:
https://blog.csdn.net/weixin_38819889/article/details/122456132

同系列文章推荐下:
1.聚美app之 _sign参数分析
2.大润发优鲜app之paramsMD5参数分析
3.美图秀秀 sig参数分析
4.贝壳app Authorization参数分析
5.豆瓣app sig参数分析
6.半次元app之data参数分析

1.抓个包

打开charles抓个包,里面有一个参数叫paramsMD5,这就是今天要研究的参数。然后打开jadx,搜索半天发现啥也没有搜到,猜测该app是加壳。

2.查壳

我们先打开查壳工具,查一查壳,这里是mac终端使用的,工具叫ApkScan-PKID,有些壳查不到,但是这里勉强够用了。


可以看到用的是360的壳。

3. 脱壳

然后我们用下葫芦娃的工具FRIDA-DEXDump,进到frida_dexdump所在的目录,直接运行python3 main.py,默认三秒钟,然后就成功把软件的壳脱掉了,拿到dex文件。

再然后把一个个dex文件重新合并拼装,打包成一个新的apk文件,效果如下:

4.jadx静态分析

这里搜索关键字 "paramsMD5",就2个地方,点进去看看这个this.f13604a.put("paramsMD5", b(a2));

然后来到这里,

发现 data = a2paramsMD5=b(a2);,其实这里面的a2就是抓包拿到的data,也就是请求传递的body,b()方法是个啥,跟进去看看。

来到这里,b() 方法java代码如下:

public static String b(String str) {try {JSONObject jSONObject = new JSONObject(str);boolean z = false;if (jSONObject.has(f13597d)) {z = jSONObject.getBoolean(f13597d);}String str2 = "";if (jSONObject.has(f13599f)) {str2 = jSONObject.getString(f13599f);}String str3 = "";if (jSONObject.has(f13598e)) {str3 = jSONObject.getString(f13598e);}String str4 = "";if (jSONObject.has(f13600g)) {str4 = jSONObject.getString(f13600g);}return b.a(str + (z + str2 + str3 + str4));} catch (JSONException e2) {e2.printStackTrace();return b.a(str);}
}

这里直接看返回值 b.a(str + (z + str2 + str3 + str4));,z和str2和str3和str4到底是个啥,跟进去看看。

看到这里我们大概明白了,就是声明一个JSONObject jSONObject = new JSONObject(str);,就是json对象,然后依次判断取出这四个字段,组装成一个新的字符串,交给b.a()方法执行。

b.a()代码如下:

  public static String a(String str) {String str2 = "@456yx#*^&HrUU99";if (e.f13526e.equals(e.a().b()) || e.f13527f.equals(e.a().b())) {str2 = "@yx123*&^DKJ##CC";}try {SecretKeySpec secretKeySpec = new SecretKeySpec(str2.getBytes(), "HmacSHA256");Mac instance = Mac.getInstance(secretKeySpec.getAlgorithm());instance.init(secretKeySpec);return Base64.encodeToString(instance.doFinal(str.getBytes()), 2);} catch (Exception e2) {e2.printStackTrace();return null;}}

看名字,大概就能猜到这里使用的HmacSHA256+base64组合算法(如果不了解该算法,请看文章: https://blog.csdn.net/weixin_38819889/article/details/122455802),到这里静态分析差不多,拿出我们的frida动态调试一下。

5.frida动态调试

js代码如下:

Java.perform(function (){var g_class = Java.use("com.rt.market.fresh.application.g");g_class.b.overload("java.lang.String").implementation = function(v1){console.log("↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓");console.log("Sig入参-参数:" + v1);var res = g_class.b(v1);console.log("Sig加密后的数据:" + res);console.log("↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑");return res;}var b_class = Java.use("com.rt.market.fresh.application.g$b");b_class.a.overload("java.lang.String").implementation = function(n1){console.log("a方法入参-参数:" + n1);var res = b_class.a(n1);console.log("a方法返回-数据:" + res);return res;}})

执行命令看看效果:

frida -U com.rt.market.fresh -l hook_dufxian.js


好了,到此分析完成。

6.算法还原

加密还算简单,最后已经还原成python,测试对比一下paramsMD5: e675/mblyBuNdX8+uWUpx5FwGOHWclKILz2UDDtPDaw=,值对得上。

完成,手工!

大润发优鲜app之paramsMD5参数分析相关推荐

  1. 最新大润发优鲜小程序逆向分析

    目标小程序:大润发优鲜小程序 重要说明:文章教程仅供参考学习,请勿用于非法用途,否则后果自负. 目录 1.需要准备的工具 2.工具预先初始化准备

  2. 某次元app之data参数分析

    今天我们要分析的app 是5Y2K5qyh5YWD54mI5pys5Y+3djUuMC44 ,小伙伴们可以去各大应用商定自行下载. 同系列文章推荐下: 1.聚美app之 _sign参数分析 2.大润发 ...

  3. 聚美app之 _sign参数分析

    今天我们要分析的app 是聚美优品, 版本号v8.781 (当前最新版),小伙伴们可以去各大应用商定自行下载. 转载请注明出处: https://blog.csdn.net/weixin_388198 ...

  4. 飞瓜快数app之sign参数分析

    趁着还有一些记忆,赶紧记录下. 今天我们要分析的app 是飞瓜快数,版本号v1.0.8 ,小伙伴们可以去各大应用商定自行下载. 只做参数分析,用来学习,如有侵权,请联系博主,第一时间删除. 转载请注明 ...

  5. 史上最大规模,天猫新零售如何爆改100家大润发?

    阿里究竟能给大润发带来什么改变? 自从阿里巴巴集团224亿战略入股大润发母公司高鑫零售的消息披露,这就变成一个令人期待的问题.这是中国商业零售史上最大规模的新零售改造升级行动. 阿里巴巴集团CEO张勇 ...

  6. 淘宝心选在大润发开店了,背后意味着什么?

    相比其他精选电商平台,淘宝心选能够借助大润发等阿里新零售大军加快落地的脚步,而大润发等也可以因此丰富产品线,满足年轻顾客群体的需求. 6月28日,"淘宝心选·生活家"首店在上海大润 ...

  7. 新零售如何爆改100家大润发门店丨对话大润发董事长黄明端

    阿里巴巴究竟能给大润发带来什么改变? 自从阿里巴巴集团224亿战略入股大润发母公司高鑫零售的消息披露,这就成了一个令人期待的问题. 这是中国商业零售史上最大规模的新零售改造升级行动.6月11日,大润发 ...

  8. 沃尔玛、永辉、大润发新尝试迭起,未来零售到底怎么个玩法?

    关于未来零售,零售行业至今仍然没有一个深入浅出的定性描述.虽然行业说不清楚未来零售的具体模样,但是近几年来行业内不少企业都在积极寻求新的转变,试图描绘未来零售的蓝图. 目前,零售行业内积极寻求新尝试的 ...

  9. 最大规模传统零售升级揭晓 100家大润发线上线下同步加入天猫618

    最大规模的一次传统零售业的新零售升级行动,今日揭开面纱. 6月11日,大润发宣布,全国已有100家大润发门店完成天猫新零售升级改造,将全面参与天猫618理想生活狂欢季.改造后的门店借鉴了盒马和淘鲜达的 ...

最新文章

  1. 机器学习 —— 概率图模型(学习:CRF与MRF)
  2. React 组件js文件中如何引入其他的js 文件数组
  3. ASPNET 页面编码
  4. vim如何在底部打开新窗口
  5. 利用 LotusScript 灵活操作 Lotus Notes 富文本域
  6. TensorFlow第十二步 自编码器去噪降维
  7. Linux学习总结(2)——linux常用命令大全
  8. Assignment 双向队列
  9. OpenGl图元基本操作之点选高亮
  10. 各版本JQuery文件下载
  11. 使用html仿支付宝首页,仿支付宝首页头部伸缩效果
  12. 计算机合并单元格怎么操作,excel怎么合并单元格方法
  13. Verilog学习——T触发器
  14. 互联网公司招聘--奇虎360--软件测试--笔试题
  15. 阅读不懂,图书之过——《大话设计模式》创作历程
  16. RxSwift极简入门
  17. 联发科mt6735详细参数_联发科MT6737和MT6735芯片资料和性能对比
  18. 用js实现背景颜色改变
  19. 用matlab演奏周杰伦的《七里香》
  20. 双曲线知识的简单回顾

热门文章

  1. dom4kj解析xml
  2. IDEA连接Mysql报错: 未找到驱动程序类 ‘com.mysql.cj.jdbc.Driver‘.  Change driver class
  3. timeit统计运行时间
  4. vue打包后图片路径错误
  5. 马云致投资者公开信:大数据云计算是阿里未来十年核心战略之一
  6. ios 获取视频截图
  7. linux cache and buffer【转】
  8. POJ1523:SPF(无向连通图求割点)
  9. 给vs2010安装上cocos2d-x的模版
  10. Repeater控件的分隔线