买车报价APP sign分析
2023-1-11 18:1:25 Author: 看雪学苑(查看原文) 阅读量:9 收藏


本文为看雪论坛优秀文章

看雪论坛作者ID:那年没下雪

1、charles抓包图

很明显这里面要分析的就是这个p_sign,那么直接把APK扔jadx看看,果然没那么简单加壳了还是某数字企业壳,这下难度增高了、这里省略脱壳的步骤。数字企业壳懂得都懂不可能全部脱下来的只能用哪些类就脱哪些了,略微麻烦点。

2、寻找sign如何生成的

这里直接通过p_sign是很难搜索到对应代码块的,这里大概尝试了N种方法都没有找到有价值的信息。想着通过url的地址去找对应的发请求的位置是不是可以,于是通过搜索url路径找到了一个类。

通过Hook AppUrlConstant类的getAPPDomain方法找到、然后打印堆栈信息找到跟这个方法相关的一些类,截图如下:

那么接下来就从图上这几个类分析了,最终定位在BaseRequest这个类,在这个类里找到了我们需要分析的p_sign,下面的事情就简单了看看它是怎么生成的了。

这是具体的加密方法,没啥难度了。

frida  hook下入参。

D291A30K cityid 430100 kw 宝马X5 lat28.233212lon112.958713 p_appid price.android p_appversion7.4.5 p_chanel tecentmarket p_deviceid 0ac783fa_2b73_4185_871c_84c380da38d7 p_osversion 10 p_timestamp 1649402430107 type 0 D291A30K

基本上一目了然就是把appKey和请求参数加固定参数拼接起来做MD5运算,然后在对md5结果做一些处理。

frida代码也贴上:

        Java.perform(function(){            let AppUrlConstant = Java.use("com.cubic.choosecar.data.AppUrlConstant");            AppUrlConstant.getAPPDomain.implementation = function(){                console.log('getAPPDomain is called');                let ret = this.getAPPDomain();                console.log('getAPPDomain ret value is ' + ret);                printStack();                return ret;            };            let EncryptionHelper = Java.use("com.autohome.baojia.baojialib.tools.EncryptionHelper");            EncryptionHelper.md5s.overload('java.lang.String').implementation = function(str){                console.log('md5s is called str ',str);                let ret = this.md5s(str);                console.log('md5s ret value is ' + ret);                return ret;            };                 })}function printStack() {    Java.perform(function () {       console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new()));    });}function print(maps){    var JSONObject = Java.use("org.json.JSONObject")    var result = JSONObject.$new(maps)    console.log(result.toString())}setImmediate(main)

看雪ID:那年没下雪

https://bbs.kanxue.com/user-home-884888.htm

*本文由看雪论坛 那年没下雪 原创,转载请注明来自看雪社区

# 往期推荐

1.CVE-2022-21882提权漏洞学习笔记

2.wibu证书 - 初探

3.win10 1909逆向之APIC中断和实验

4.EMET下EAF机制分析以及模拟实现

5.sql注入学习分享

6.V8 Array.prototype.concat函数出现过的issues和他们的POC们

球分享

球点赞

球在看

点击“阅读原文”,了解更多!


文章来源: http://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458492066&idx=1&sn=bb3c1aa8fb180040404a916d58bdcc9d&chksm=b18eac2886f9253e1e4648e663de0233c10401ce67d745f1e457a303cba0329fe94b05f0d893#rd
如有侵权请联系:admin#unsafe.sh