一次美团外卖apk分析学习
一次美团外卖apk分析学习
2021年2月26日作
本文目的只是学习探究,如有冒犯公司,请联系作者下架文章
qq:2831243095,欢迎一起探讨学习
本文主要探究美团外卖app商家数据接口
从抓包开始,美团会走私请求,所以你会发现配置代理在电脑上抓的包并不全面
解决办法呢,就是利用root后的设备安装 proxyDroid 来强制应用使用代理
proxyDroid下载地址:自行百度搜索
开启强制代理后用Fiddler Everywhere正常抓包
万里长征第一步,搞定了
通过参数分析得知主要有两个参数
mtgsig
waimai_sign (看起来挺敏感的,实则就是纸老虎吓唬人的)
这里在开始的时候我犯了一个弥天大错 siua
siua (这是一个特殊的参数,虽然表面上看着没什么用)
我在测试请求的时候,把 =iua 这个参数删掉请求正常返回,我就在自己的小本本上写下了: siua无用 (悔不当初)
得到了参数,开始逆向apk,寻找参数的生成方式,我用的工具是Bytecode Viewer1
- mtgsig
全局搜索 “mtgsig” ,一路读代码,发现最后调用的是一个名为main的native方法
经过frida hook之后成功得到参数
发现该参数是对请求中的params和data进行签名校验,
直接调用签名生成
{"a0": "1.5","a1": "e68c4c18-35ec-4972-84e4-32a0836455a8","a2": "61f5ea87404820e7fe6cf58662a0693f587d557c","a3": 2,"a4": 1614309108,"a5": "2m0ZZuFqsef5wIm3uGZAW0C2lqH8CLUdDIRu0cMzeZKy5SNT3DbvBP5zM7uTBeh+bYjtZQiN5S7zAA7fUJhl7KGEcZ5BV5LK5or+/1jj99mmIGqA8oHbC5QOGUp4wd+ZUZZeB+zyQ8vrzW4Fue1mzQIdLy4xOXcINT39zJjcKW4XVVbT45Bdg42E5b/tpq6XImJ6jikbyGlHPENeExYbavwbYfQx/jTLED2uAiBD02Z99GBStpFBp3SEeH0W1nHWfFy3uutA2rRTFNDMj9kZkjKU6r+yzAsMnL5bexzQ79Oc2IFqiM+Fbp/v7RU9ErE5pIM=","a6": 0,"d1": "a597896771052653f45cc20df8a5a018aee333d7"
}
紧接着开始写代码请求,一套操作猛如虎,写完开始运行!
至此,作者嘴角开始微微上扬
心想,就这?
就在作者得意忘形,仰天大笑时,果不其然,报错了。
一看返回的是啥,哦豁:
至此,初步版本程序一蹶不振,一直返回这个,直接yang痿,连手机上都无法正常访问了
作者眉头狠皱:小东西,有点意思
接着就是一个下午揪着一头帅气的头发苦苦思索
就在一筹莫展之际,抬头跟桌子前面对坐在图书馆的妹子对视一眼,眼睛一瞪,脑袋一闪,有了!
那妹子长得真心可以,还是个考研的医学生,带着一本蓝色生死恋系列中的生理学(别问我为啥知道,问就是我有一个梦想),奈何灵光一闪,顾不得其他,埋头狂写,那妹子最后走的时候看了我一眼摇了摇头似乎。
手机上也无法访问!那我换个手机开个模拟器抓参数对比一下不就来了吗?针不错~
最后经过对比复制参数校验发现真凶
siua
作者当时就卧槽了
只有接着逆向了,查找这个看似平凡的 siua 是从何而来
最后发现竟也是一个native方法,小丑竟是我自己
接着就是打开ida pro进行苦逼操作了
发现siua是对设备的一些参数的签名,每个设备只能签出来一个
开始伪造,成功!
至此,逆向分析学习结束
欢迎加作者qq一起学习,更欢迎介绍妹子给我[斜眼笑]
一个不错的逆向分析工具,支持apk、jar ↩︎
一次美团外卖apk分析学习相关推荐
- 美团外卖Android平台化的复用实践
美团外卖平台化复用主要是指多端代码复用,正如美团外卖iOS多端复用的推动.支撑与思考文章所述,多端包含有两层意思:其一是相同业务的多入口,指美团外卖业务需要在美团外卖App(下文简称外卖App)和美团 ...
- 美团外卖Android Lint代码检查实践
概述 Lint是Google提供的Android静态代码检查工具,可以扫描并发现代码中潜在的问题,提醒开发人员及早修正,提高代码质量.除了Android原生提供的几百个Lint规则,还可以开发自定义L ...
- React Native在美团外卖客户端的实践
MRN简介 MRN(Meituan React Native) 是基于开源的React Native框架改造并完善而成的一套动态化方案,在开发体验上基本能与原生RN保持一致,同时从业务需求的角度满足从 ...
- Android Studio初学者实例:Fragment学习--仿美团外卖界面
本次课程为Fragment为主题,课程的示例仿美团外卖界面,不同于底部导航栏的Fragment案例,此界面分为左侧切换与顶部切换.本文先是发布代码与效果,后续讲解将会在后续补充.先看看效果: 首先是布 ...
- React Native在美团外卖客户端的实践,已有千人收藏
最下层是Android/iOS系统服务层,因为MRN是跨端的,所以需要引入这一层.相对单一平台来说,由于MRN的引入,整个App的架构不可避免地需要考虑Android和iOS平台本身的差异性. 倒数第 ...
- 美团外卖Android Crash治理之路
Crash率是衡量一个App好坏的重要指标之一,如果你忽略了它的存在,它就会愈演愈烈,最后造成大量用户的流失,进而给公司带来无法估量的损失.本文讲述美团外卖Android客户端团队在将App的Cras ...
- Android 高仿美团外卖详情页
目录 1.需求分析 2.具体实现 2.1效果展示 2.2布局分析 2.3代码分析 2.3.1自定义 CoordinatorLayout.Behavior 2.3.2自定义 RecyclerView.I ...
- 仿美团外卖菜单界面的实现
仿美团外卖菜单界面的实现 布局文件 总布局 <?xml version="1.0" encoding="utf-8"?> <LinearLay ...
- CH12-综合项目—仿美团外卖
文章目录 目标 一.项目分析 目标 项目概述 开发环境 模块说明 二.效果展示 目标 店铺界面 店铺详情界面 店铺详情界面 确认清空购物车的对话框 菜品详情界面 订单界面和支付界面 三.服务器数据准备 ...
最新文章
- codeforces D MUH and Cube Walls(kmp)
- java 加载class文件路径_动手实现MVC: 1. Java 扫描并加载包路径下class文件
- 设置Netbeans 6.5为英文界面
- 【tool】将虚拟机从 VMware workstation 转到 vsphere
- 《我们不一样》团队项目用户验收评审
- Hive 之 分析窗口函数
- 算法 Tricks(五)—— 将一个序列量化为何值时平方误差最小
- layDate——初步使用
- Vijos1755 靶形数独 Sudoku NOIP2009 提高组 T4 舞蹈链 DLX
- 物联网模块跨阵M1控制LED
- 天线要设计为四分之一波长的原因
- XSS原理dvwaxssvalidator使用
- PDM与Excel利用VB脚本进行互导
- 去除文件系统、只读等属性
- 基于3D关节点的人体动作识别综述(转)
- 易语言安卓模拟器adb模块制作认识adb
- 通过语言包,让云豹短视频源码实现国际化运营
- ant build.xml 配置详解
- 从arduino板开始做到阿里云app控制--WeMos D1或ESP8266连接阿里云文章合集及源代码
- gravity和layout_gravity的区别(有时使用layout_gravity=center时失效的原因)