欢乐消除开心假日协议解密

bad8107555806000f445f7ddc2dcf394.png

30087c0a7a67bfa4858ffc859fe91b08.png

欢乐消除开心假日协议解密

d2e94701724eb7a1dffb5d7f214cacac.png

协/议/流/量/解/密

fe076ee721a92b412422fa7094481487.png

分析欢乐消除开心假日这款游戏流量的协议加密方式。


deafc83f24eab809b193ad4dd99db647.png

欢乐消除开心假日是一款合成+模拟家装的游戏,在这个游戏中,你将成为一位充满热情的设计师,与好友一起经营工作室。你需要根据客户的需求重新设计每个房间,创造出令人惊艳的独特设计。借助你自己的想象力和创造力,你将征服挑战,创造出令人眼前一亮的工艺品!这款游戏多个平台都能玩,iOS、Android、小程序都有,前一阵子貌似很火的样子,有人找我搞它,结果由于习惯性活干得比较慢,对方用不上了,考虑给大家体验一下。

76e243b6ff2a8bdec83762ae94a67c60.png

584d6057f512774a113ef8e77478221e.png

3a6d40e314871ace685cb370ccce960e.jpeg

827313f3cc8d24f404cb22fa2cf30f9f.jpeg

ece0aef5a61026c18e5353b514465cd3.png

ea6836571d0fc36c8eda886753881ebc.png

毫无疑问,这类存档类游戏,协议的套路是一样的,数据是加密的。它在整体上,一大串存档数据,在玩的过程中上传服务器,在合适的时候,从服务器下载下来,同步到本地使用。上传下载的过程,有一些校验,当然,还有一些风控策略。在服务端或者客户端,处理了就行了。

3ad1bc4a52b39976b306ce2becb8b575.png

下载存档

这款游戏上传存档和下载存档,用的都是HTTP,小程序用的URL是这个:

https://kxjr.vzhifu.net/wxxyx/userinfo/getinfo

使用POST请求,请求体数据如下:

params={"appid":"38865",
            "prjid":"38865",
            "openid":"ohk81cccccccY",
            "chaid":"wechat",
            "timestamp":"1673596666000",
             "sign":"660767676767677676E0B2C8607151"
            }

这个里面唯一的看点是sign值,加盐然后MD5即可获得,盐值解开小程序包就能获取到,小程序解包可参考文末之前的文章,或者后台找我(公众号:协议分析与还原)。

Android和iOS的开发者应该是同一个人,使用的URL都是这个:

https://kxjr.app.vzhifu.net/dnwx/game/login/v2

这个的抓包过程需要注意使用合适的方式。

使用POST请求,请求体数据如下:

params= {
        "accountType": "0",
        "aid": "2ec511b87b96d69e",
        "appid": "38823",
        "brand": "apple",
        "chaid": "ios",
        "cmd": "1002",
        "email": "",
        "gold": "0",
        "idfa": "",
        "itemList": "",
        "level": "0",
        "loginId": "xxxx",
        "lsn": "220360577",
        "lv": "0",
        "model": "iphone11",
        "netType": "2",
        "os": "ios",
        "pid": "38111117",
        "pkgName": "com.xzd.holiday.hlxc",
        "pwd": "",
         "sign": "xxxx",
        "sysVer": "28",
        "timestamp": "1337049333359",
        "userName": "",
        "wxhead": "",
        "wxid": "",
        "wxname": ""
    }

这个里面仍然只有sign值计算需要注意,加盐然后MD5即可获得,盐值从程序里就能获取到,如果遇到困难可以后台找我(公众号:协议分析与还原)。

9cf3b8215d258f27061f3c981502f21f.png

上传存档

上传存档的过程,小程序用的URL是这个:

https://kxjr.vzhifu.net/wxxyx/userinfo/update

Android和iOS用的是这个:

https://kxjr.app.vzhifu.net/dnwx/game/report/v2

里面的存档是和下载的响应体内基本一样的,一个itemList里面有很大的data或者zipuserdata,需要解base64,解gzip,然后unquote,找到里面的resources,处理里面的数值,再反向处理一边还原:

itemdatab64=player['itemList']['data']#这个里面的resources 里面时数据,改这个才生效
    itemdata=base64.b64decode(itemdatab64.encode())
    itemdataunzip=gzdecode(itemdata)
    itemdataurldec =  urllib.parse.unquote(itemdataunzip)
    itemdatajson=json.loads(itemdataurldec)
    resources=itemdatajson['resources']

其他的就很简单了,如果遇到问题,仍然可以找我。

a7b9f5247a784f4f6ff1e8bac2de0c60.png

03b6901c2d150efa33896ddbd54db1a0.png

b9d8be064d608091c661202443581d48.jpeg

f675f10fdb2b7240dabff9ac07e20211.jpeg

ac452bc2a2d8d0ff565dab3707116af9.png

f6562894e9275df275df2b64324bcf2b.png

这款游戏的存档修改,还算简单,我最喜欢简单的算法了,我相信大家也喜欢。

58413eea52efef27d6f0010e595970b2.png

小提醒

解密协议有困难,找我(协议分析与还原),准没错,大家一起提高。                    

970fef061902bb5417e43ba24f1baf1f.png

fbe1fd93eb9a9a0c61c40234de75cafa.png

END

afb2e420d0d9566d59928a63934fe0c2.png

f835c305a5d63122e8ffb612d3bed1b8.png

往期回顾

PC端微信小程序wxapkg解密

cocos2dx小游戏数据签名算法破解

ffa1d732991bb318ecae3e8b640249cf.png

aff5894af44de0ca8889270fea71495d.jpeg

33079eff1fe26c494dd46d4d826a5f1b.png

猜你喜欢

转载自blog.csdn.net/yeyiqun/article/details/129360671