Crack App | 某资讯 app 参数 Signature 与 request_sign_q 加密逻辑分析

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: Crack App | 某资讯 app 参数 Signature 与 request_sign_q 加密逻辑分析

今日目标

aHR0cHM6Ly93d3cud2FuZG91amlhLmNvbS9hcHBzLzEyMzY2NzE=

js 逆向卷不动了,开始入门 app

抓包分析

打开 app,然后检索python关键词,可以找到下面的请求

其中signature还有request_sign_q是分析的重点

查壳与脱壳

现在基本 app 都会做加固防护,所以还是直接看看有没有壳

果然还是有壳的,是数字家的

还是用上次的办法,先脱壳试试,然后再抓包看请求

很好,BlackDex 直接挂逼了

掏出葫芦娃大佬的frida-dexdump试试

项目地址:https://github.com/hluwa/frida-dexdump

使用方法也很简单,直接pip3 install frida-dexdump就行了,具体的可以看看大佬的项目,记得star

r0env自带了frida-dexdump,所以先看看frida-dexdump的帮助文档

每个项都做了通俗的标注,大佬太贴心了。

直接frida-dexdump -d走起,这个选项很慢,没有FART倒数 3 秒脱壳那么快,但是非常给力

# 准备工作
1、启动 frida server
2、启动 app 并保持 app 运行状态
3、启动 frida-dexdump

直接开整,然后就脱下来了,不指定输出路径的话默认会保存在frida-dexdump/[package name]的路径下

全部打包太多了,所以我删掉了非常小的几个dex,按照大小排序打包了最大的几个,拖到jadx中分析

通过检索我们可以大致定位到signature还有request_sign_q的位置,接下来分析看看

加密参数分析

signature 参数分析

先看signature,这个参数直接检索结果可太多了

所以试着通过同一个请求的其他参数辅助定位,这个和 js 逆向中分析参数的思维逻辑是相通的

然后就可以找到下面的位置了

这个位置是okhhtp3.Interceptor和 js 逆向中遇到的拦截器一样也是在往请求中搞一些小动作

这里可以看到signature经过了C26321sk1.a(url.url().toString(), hashMap)的出结果

所以继续追进去看看a方法都做了什么操作

进去之后看到这里取了appid、cv、platform、reqid、version这些参数之后,还调用了一个a方法

这里的a方法返回的是context,是 app 的上下文,和加密关系不大,主要的逻辑还是在C13259SignUtil.a

可以看看这个文章:http://gityuan.com/2017/04/09/android_context/

跟到C13259SignUtil.a中,可以看到,方法里调用了signInternal方法

这个方法是个native方法,使用下方代码,hook看下结果和参数

Java.perform(function () {
     var SignUtil = Java.use('类名');
     SignUtil.signInternal.implementation = function (a,b) {
     console.log("参数 a ===>:"+ a);
     console.log("参数 b ===>:"+ b);
     var result = this.signInternal(a,b);
     console.log("结果===>:"+result);
     return result;
 };
});

可以看到参数a是标识context实例,b参数是一串字符串符合我们前面的分析

这个so我们之后分析

request_sign_q 参数分析

依旧是搜索定位,这个参数好定位得多

关键得函数是这个b函数,继续跟进去分析b函数

这个就比较简单啦,是一个AES加密,同样的hook一下看看

Java.perform(function () {
     var encryptUtil = Java.use('类名');
     encryptUtil.b.implementation = function (a) {
     console.log("参数 a ===>:"+ a);
     var result = this.b(a);
     console.log("结果===>:"+result);
     return result;
 };
});

输出的内容比较多

这里就截了短的一个给大家看看,大家可以根据抓包来印证分析出入参

不是自写算法,大家可以试试看用python还原一波

so 分析 - 没写,还不会

刚刚我们分析了signature 参数,但是只到调用的位置就没有继续了,因为接下来就是so层的分析了

把对应的so拖到IDA里面瞅瞅,有点难,还是之后熟悉了unidbg还原之后再来分析吧

End.

以上就是今天的全部内容了,又一次见识到自己的菜,继续学习了。

相关文章
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
|
5月前
|
【Azure App Service】App service无法使用的情况分析
App Service集成子网后,如果子网网段中的剩余IP地址非常少的情况下,会在App Service实例升级时( 先加入新实例,然后在移除老实例 )。新加入的实例不能被分配到正确的内网IP地址,无法成功的访问内网资源。 解决方法就是为App Service增加子网地址, 最少需要/26 子网网段地址。
|
6月前
【Azure Function App】本地运行的Function发布到Azure上无法运行的错误分析
【Azure Function App】本地运行的Function发布到Azure上无法运行的错误分析
【App Service】在Azure App Service中分析.NET应用程序的性能的好帮手(Review Stack Traces)
【App Service】在Azure App Service中分析.NET应用程序的性能的好帮手(Review Stack Traces)
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
149 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
121 75
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
32 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
MNN-LLM App 是阿里巴巴基于 MNN-LLM 框架开发的 Android 应用,支持多模态交互、多种主流模型选择、离线运行及性能优化。
1050 14
MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
133 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【07】flutter完成主页-完成底部菜单栏并且做自定义组件-完整短视频仿抖音上下滑动页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【07】flutter完成主页-完成底部菜单栏并且做自定义组件-完整短视频仿抖音上下滑动页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
83 18
【07】flutter完成主页-完成底部菜单栏并且做自定义组件-完整短视频仿抖音上下滑动页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈

热门文章

最新文章

  • 1
    MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
    354
  • 2
    【网络原理】——图解HTTPS如何加密(通俗简单易懂)
    44
  • 3
    原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
    39
  • 4
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    13
  • 5
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    25
  • 6
    【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
    5
  • 7
    【Azure Function】Function App出现System.IO.FileNotFoundException异常
    1
  • 8
    【Azure Logic App】使用MySQL 新增行触发器遇见错误 :“Unknown column 'created_at' in 'order clause'”
    3
  • 9
    阿里云APP备案流程图以及备案所需材料整理,跟着教程一步步操作
    10
  • 10
    【07】flutter完成主页-完成底部菜单栏并且做自定义组件-完整短视频仿抖音上下滑动页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
    12
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等