抓包看到乱码怎么办?不要慌 试试去分析他

CB527EA1-E154-44CC-86C2-F6E8779BC1CF.png
脱壳工具:FRIDA-DEXDump : https://github.com/hluwa/FRIDA-DEXDump

0x01 抓包

648BC58C-28D6-4724-8E61-95A2FBC433A4.png
一堆乱码。。看看hex
C086FFF8-948B-47B4-87E5-472703F8F5DA.png
这我们怎么分析呢?首先想想怎么定位
12FA76C4-239D-4258-9952-3B654222F38D.png
咱们注意到这个 encrypt: yes 很是显眼 就以他为切入点吧

0x02 分析

搜索出
C5341B41-165A-41ED-BC85-D12803E94629.png
点进去瞅瞅
进去后看到 RequestBody a = a(request.body());
6FE783BB-664B-45BE-AFB1-06B2746A9F16.png
咱们不妨大胆猜测下 a(request.body()) 这个a函数就是将请求数据加密的函数
进去这个a函数里面。
C3E10410-243B-4EE6-9C4E-DDB6845CF2D3.png
咱们发现 r.a 更像是加密函数了。第一个参数是原数据,第二个参数是key,一路跟进去 发现真正的加密函数
image.png
b(byte[] bArr, String str)
第一个参数是原数据,第二个参数是key
咱们直接使用frida进行hook看看

0x03 hook

2BC7E5F8-4A6C-41EC-8AF6-2AFECAAE8EBE.png
打印出bArr,这是需要加密的原数据
为什么bArr也是一堆乱码呢??难道bArr传进来之前被加密过吗?
看看hex
4AEAB41F-F9CE-4705-A3DB-487E66D6F0BA.png
1f 8b 08 gzip的文件标示,咱们将这段数据试试解码去~

0x04 解码

image.png
可以看到已经解码出来了~

所以得出 原数据 -> URL Encode -> Gzip -> 加密 就得到了我们抓包的结果
加密函数很简单。。直接抠出去就行了。。