大卖网逆向分析params参数之找到加密位置

本文详细描述了如何在安卓APK中追踪参数生成过程,通过调试工具如postern和charles抓包,使用JADX和fridahook定位参数生成点,并强调了技术交流的纯正用途。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分析的是damaiw_113376.apk这个版本

1.首先在调试机上安装APK,然后使用postern + charles抓包,发现很容易就抓到包了,不会的自行百度吧。

2.提交订单发包是下面地址

https://xxxxxx/gw/mtop.trade.order.create/4.0/

查看发包参数

 这里先看下data中的param参数,下面开始查找这个参数生成位置。

3.使用JADX打开APK,搜索{\"gzip\":\"true\"},发现以下几个位置

 在其中两个位置处查看代码,使用frida hook这两个位置,可以发现具体生成位置如下

 接着再hook深点,找到了生成位置

hook输出的签名串和发包的是一致的,说明就是这里生成了params参数。

这里可以在charles工具中增加一个断点,这样在提交订单时可以停住查看参数,订单又提交不了,停住对比hook输出参数和发包参数。

到此就找到了其中一个参数params的生成位置,下面就是把这个算法扣出来,另外核对入参。

参数实在太多了,又没有需求,就懒得整了。 

纯技术交流,请勿用于非法用途,如有权益问题可以发私信联系我删除.

分析美团逆向工程中的签名参数时,需要结合反编译、动态调试、络抓包等技术手段,对客户端与服务器之间的通信进行深入研究。以下是一些可行的分析方法和解决方案: ### 1. 签名参数的识别 通过反编译工具(如Apktool、Jadx)对美团App的APK文件进行解包和代码分析,可以定位到生成签名参数的核心逻辑。通常签名参数会涉及时间戳、随机字符串、设备信息、用户行为数据等字段,并通过MD5、SHA1、HMAC等加密算法生成请求签名[^2]。 ```java // 示例:模拟签名生成逻辑 public String generateSignature(Map<String, String> params) { List<String> keys = new ArrayList<>(params.keySet()); Collections.sort(keys); StringBuilder sb = new StringBuilder(); for (String key : keys) { sb.append(key).append(params.get(key)); } return DigestUtils.md5Hex(sb.toString()); } ``` ### 2. 动态调试与Hook技术 使用Xposed框架或Frida工具对关键函数进行Hook,实时获取签名生成过程中的输入输出。例如,可以拦截`generateSignature`方法,观察其传入参数及返回值,从而掌握签名规则。 ```javascript // Frida Hook 示例 Java.perform(function () { var SignUtil = Java.use("com.meituan.sign.SignUtil"); SignUtil.generateSignature.overload('java.util.Map').implementation = function (params) { console.log("Params: " + params); var result = this.generateSignature(params); console.log("Signature Result: " + result); return result; }; }); ``` ### 3. 抓包分析 利用Charles或Fiddler等工具捕获美团App发起的HTTP/HTTPS请求,观察请求头和请求体中携带的签名字段。通过对多个请求的比对分析,可以归纳出签名字段的变化规律和构造方式[^3]。 ### 4. 渠道号与配置信息 在美团渠道包中,除了签名参数外,还可能包含渠道号(channel)、版本号(versionCode)、设备唯一标识(device_id)等信息,这些都可能参与签名计算。可以通过读取`BuildConfig`类或`SharedPreferences`来获取这些配置值。 ```java // 示例:获取渠道号 public static final String CHANNEL = BuildConfig.CHANNEL; ``` ### 5. 加固与对抗措施 美团App可能使用了加固壳(如梆梆安全、爱加密)来保护核心代码,防止直接反编译查看签名逻辑。此时可采用脱壳技术或使用内存dump工具提取原始Dex文件后再进行分析。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liberty888

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值