记半次元App数据解密记录

最近发现一个有意思的应用,半次元,这个应用中有很多Cosplay美图,很感兴趣便想试试能否通过抓包分析获取相应的接口,没想到自己实际上已经跳到了一个大大的深坑之中,一起来看下吧。


万里长征第一步:抓包分析

本次分析采用Fiddler和Charles皆可,若不会配置,请自行百度相关软件的使用,另外因为半次元采用的https的接口,所以这里必须要先配置CA证书,不太了解的同学可以参考:
Charles抓取https
fiddler抓包https
本文以Fiddler为例,配置完成后在Fiddler界面可以看到页面请求的https连接了,以Cos周榜为例:
这里写图片描述
如图,我们从这次post请求可以看到url,query参数,请求体body以及返回的json数据,完整url如下:
https://api.bcy.net/api/coser/topList?iid=36046028020&device_id=46019894537&ac=wifi&channel=huawei&aid=1250&app_name=banciyuan&version_code=412&version_name=4.1.2&device_platform=android&ssmix=a&device_type=BKL-AL20&device_brand=HONOR&language=zh&os_api=26&os_version=8.0.0&uuid=866953034499460&openudid=56028d53b0cb3095&manifest_version_code=20180605&resolution=1080*2160&dpi=480&update_version_code=412&_rticket=1531992443394
这里请求体body的key是data,加密内容是:
Lc59D72k2R4YFB0XMOPQRgpNKWGco6f1e86WkOur0ZArCiT+R6VlSvHQYEUtFtTVXrYpx4tE3WZV5vf043AL8XwSxskW592ULRAzrh6oEcMW9FBDzBrB+l9QIGFengtJ

因为是Post请求,这里如果直接点击打开会出现默认的提示,不会返回任何数据,所以我们可以通过Postman等工具进行请求测试,如下:
这里写图片描述

那么问题来了,data是加密的的,我们需要的是通过动态的生成data来自由根据参数获取数据,那么该怎么做呢?


万里长征第二步:反编译

为了能看到请求体中的data参数到底如何产生的,我们就需要通过反编译去分析下源码看看。

首先从官网下载半次元apk的安装包,这里地址是https://bcy.net/static/app,这里直接使用快捷方便的Android killer来完成反编译逻辑,成功反编译后如下:
这里写图片描述

很容易的我们找到了班次元的源码路径,完整内容是com.banciyuan.bcywebview,由于我们能直接看到的是sm

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值