『你可否谛听我的呢喃?』

0x00.前言

毕竟是学生党,付费曲包 18 元一个……

0x01.工具

  1. 一台安卓手机,我的是MX4 Pro,安卓5.1.0系统,已root(非必需)
  2. Fiddler - Free Web Debugging Proxy - Telerik
    Fiddler
    Fiddler

0x02.方法

周免

点击此处 ← 查看折叠

配好安卓手机的网络代理以及FiddlerHTTPS抓包功能,进入游戏,遇到包含check_xd_purchase的请求时,在AutoResponder标签页中Add RuleRule Editor处理方式选择Find a file...,选择到一个内容为{"result": "purchased"}文本文档,点击Save保存规则,点击Enable rules使规则生效。最后,在游戏拓展包处点击恢复购买,弹框恢复购买成功,到此结束。

0x03.原理

2020-5-29 21:15:56:曲包详细定义见MuseDash 排行榜数据存储#0x02-数据下载
https://lab.yuangezhizao.cn/api/v0.0.1/musedash?unlock_all_for_wuhan

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
def unlock_all_for_wuhan():
all = [
'1-0', '1-1', '1-2', '1-3', '1-4', '1-5',
'2-0', '2-1', '2-2', '2-3', '2-4', '2-5',
'3-0', '3-1', '3-2', '3-3', '3-4', '3-5',
'4-0', '4-1', '4-2', '4-3', '4-4', '4-5',
'5-0', '5-1', '5-2', '5-3', '5-4', '5-5',
'6-0', '6-1', '6-2', '6-3', '6-4', '6-5',
'7-0', '7-1', '7-2', '7-3', '7-4', '7-5',
'8-0', '8-1', '8-2', '8-3', '8-4', '8-5',
'9-0', '9-1', '9-2', '9-3', '9-4', '9-5',
'10-0', '10-1', '10-2', '10-3', '10-4', '10-5',
'11-0', '11-1', '11-2', '11-3', '11-4', '11-5',
'12-0', '12-1', '12-2', '12-3', '12-4', '12-5',
'13-0', '13-1', '13-2', '13-3', '13-4', '13-5',
'14-0', '14-1', '14-2', '14-3', '14-4', '14-5',
'15-0', '15-1', '15-2', '15-3', '15-4', '15-5',
'16-0', '16-1', '16-2', '16-3', '16-4', '16-5',
'17-0', '17-1', '17-2', '17-3', '17-4', '17-5',
'18-0', '18-1', '18-2', '18-3', '18-4', '18-5',
'19-0', '19-1', '19-2', '19-3', '19-4', '19-5',
'20-0', '20-1', '20-2', '20-3', '20-4', '20-5',
'21-0', '21-1', '21-2',
'22-0', '22-1', '22-2', '22-3', '22-4', '22-5',
'23-0', '23-1', '23-2', '23-3', '23-4', '23-5',
'24-0', '24-1', '24-2', '24-3', '24-4', '24-5',
]
items = []
for music_uid in all:
items.append({
'created_at': 0.0,
'discount': 1.0,
'music_uid': music_uid,
'object_id': '',
'order': 0,
'price': 0,
'product': 'music_package_' + music_uid.split('-')[0],
'updated_at': 0.0
})
r = {
'code': 0,
'items': items,
'total': len(items)
}
return r
点击此处 ← 查看折叠

首先修改购买时的金额,付款成功,曲包未发(浪费我一块钱),确认服务端有校验支付金额;
其次,未购买时曲包返回:

未购买
未购买

瞎蒙判定字符,TruetrueBoughtbought均无果,我是想不出来了……
最后,花18块钱购买,付费成功,返回:

已购买
已购买

得到客户端判定字符,purchased9个字母值18块钱……
真贵,倒是只要知道了这个就能无限用下去了,你曲包尽管出(

0x04.后记

忘了是从哪个版本开始(空间里有记录懒得去翻),每次打完歌上传排行榜数据之后都会请求曲包购买检测,我以为重视起来校验了,就一直开着AR,结果一次意外没开,发现也能玩。好样的,合着你还是在用恢复购买之后本地缓存的校验,这样就又和以前一样了,可以在外面开网打歌了……

0x05.免责声明

本文的目的只有一个就是学习更多的破解技巧和思路,如果有人利用本文技术去进行非法商业获取利益带来的法律责任都是操作者自己承担,和本文以及作者没关系

未完待续……