type
status
date
slug
summary
tags
category
icon
password
一、目标参数
版本:VjcuNzMuNQ==
urlSign
二、JAVA层分析
搜索出两个关键点,挨个看下。
第二个看起来比第一个像很多,有rand,signVer,urlSign参数,和抓包的参数可以对应上。
跟进去com.sina.sinahttpsignlibrary.a.a(paramsExt, Integer.valueOf(random)),继续看a方法。
a方法主要作用就是对传入的objArr进行处理拼接,然后传入getSecretKey2中,进入getSecretKey2中看下,发现调用了native方法secretKey2。
Hook下secretKey2,看下传参和返回值,结果如下,传值就是url+"_"+rand,返回就是urlSign。
再主动调用一下,脚本如下,结果不变还是4b936b0a64。
三、SO层分析
IDA查看,发现是静态注册。
首先做了判断j_check_package_sign,跟进去这个方法,分析主要是判断包名以及apk签名,可以选择修改so,或者通过unidbg patch掉。
再看j_sign_now
在sign_now中有个j_secure_for_sina,跟进去有个md5,
用Frida hook下md5看下传值,结果写在了传入的第二值中。
发现在url+random后面又拼上了一个E2AC6F3643,这个是在sign_now拼接上的固定值,a1=1。
标准的md5没有进行魔改。
md5后的结果为:21cadcb5f3ebe70311e519bfdf323a3e
23a3e21cad = 23a3e+21cad
- 本案例仅做分析参考,如有侵权请联系删除
- 作者:404False
- 链接:https://blog.404nofoundx.top//article/974a1f61-bb6f-4872-921b-a21d841bfaa9
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。