某生鲜App 签名计算方法 脱个壳试试

简介: 某生鲜App 签名计算方法 脱个壳试试

一、目标


今天的目标是某生鲜App的签名 paramsMD5 ,抓个包先:


29.pngTIP: 新鲜热乎的 1.4.5


二、步骤


老规矩,上jadx


30.png

纳尼...... 这个 qihoo 很眼熟,在Windows平台下是老熟人了,没想到现在混移动端了,它又冒出来了。


怎么办?手脱是万万不行的,这辈子都不想手脱,还好我们有葫芦娃

21.png

github.com/hluwa/FRIDA…

  1. 默念一声"我想脱个壳"。
  2. 启动 APP。
  3. 启动 frida-server。
  4. python main.py。
  5. 默数三秒,脱好了。


一堆Dex怎么找


31.png

脱完的Apk在哪里? 兄弟,你太Native了,脱完就是Apk的那不是葫芦娃,那是金刚葫芦娃。


面对这一堆Dex,咱们该怎么入手?


直接搜Dex文件?

这是相当不靠谱的,Dex是中间文件,不是源码。


用jadx一个一个打开去找?

有毅力,先把文件排个序,然后从大到小去一个一个用jadx打开。


还是jadx,不过这次是批量反编译

import os, sys
# python3.7 merge_dex.py ./file/ livedex
if __name__ == "__main__":
    if len(sys.argv) < 3 :
        print("start error")
        sys.exit()
    print(sys.argv[1], sys.argv[2])
path = sys.argv[1] #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
s = []
for file in files: #遍历文件夹
    if file.find("dex") > 0: ## 查找dex 文件
        sh = '/Users/fenfei/Desktop/tool/jadx-1.2.0/bin/jadx -j 1 -r -d ' + sys.argv[2] + " " + path + file
        print(sh)
        os.system(sh)


跑一遍,这下才有意思,看到了熟悉的java代码


32.png


好了,这次从整个文件夹搜索 paramsMD5

find . -path '*/.svn*' -prune -o -type f -name "*.*" | xargs grep -nH -E -i "paramsMD5"
./com/rt/market/fresh/a/g.java:214:            this.a.put("paramsMD5", b(a2));
./com/rt/market/fresh/common/j.java:127:        aVar.put("paramsMD5", com.rt.market.fresh.a.g.b(a2));


结果很美丽

33.png

再进入签名函数一看:


34.png


三、总结


方法要找,但是脏活累活也要干,实在没办法,一个一个文件打开去找也是能接受的,反正是带薪**

35.png

有钱没欲望才是低欲望,我们这种没钱没欲望的叫面对现实


相关文章
家政服务小程序APP开发,做好上门家政最快的方法是什么?
在家政服务领域,打造成功的平台并非易事。本文分享了三个关键步骤:避免初期盲目投入、采用低成本获客方式、建立有效的阿姨筛选机制。遵循这些方法,可助你避开常见陷阱,成为行业头部平台。
|
4月前
|
PHP 开发工具 git
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
|
4月前
|
安全 Java 应用服务中间件
【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法
【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法
【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法
|
6月前
|
Ubuntu Android开发
蓝易云 - Ubuntu上导出APP的base.apk方法说明
注意:在实际的生产环境中,你应该使用 `assembleRelease`任务来构建一个用于发布的Release版本的APK,并且你需要提前配置好签名信息。
195 58
|
4月前
|
iOS开发
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
237 0
App备案与iOS云管理式证书 ,公钥及证书SHA-1指纹的获取方法
|
4月前
|
安全 PHP Windows
【Azure 应用服务】如何让App Service 支持 Delete 方法 
【Azure 应用服务】如何让App Service 支持 Delete 方法 
|
5月前
|
JSON API 数据格式
App Inventor 2 天气预报App开发 - 第三方API接入的通用方法
通过调用第三方天气api,填入必要的参数,通过Web客户端请求url。返回json格式的数据结果,使用AppInventor2解析json结果,显示到App上即可。
154 5
|
5月前
|
JSON 人工智能 API
App Inventor 2 人脸识别App开发 - 第三方API接入的通用方法
**App 效果图**:展示人脸识别功能,可识别性别和年龄。 **工作原理**:调用第三方人脸识别API,上传图片并接收返回的JSON数据,AppInventor2解析结果显示。
113 0
|
5月前
|
存储 监控 API
解锁京东 APP 商品详情的 API 接口获取方法
在数字化商业环境中,获取京东APP商品详情的API接口至关重要。这有助于电商数据分析、价格监控、商品推荐等。API接口提供高效、稳定且合规的数据源,允许快速获取大量商品信息。要使用接口,需注册开发者账号、了解接口文档并进行开发调试。示例代码展示了Python如何调用接口。同时,注意遵守规则、处理数据安全及接口更新。利用API能提升业务效率,但需在合法合规下进行。
|
7月前
|
Android开发
Android APP 隐藏系统软键盘的方法
Android APP 隐藏系统软键盘的方法
158 0

热门文章

最新文章