-
-
[原创]对于某游戏残端逆向分析 并同步使用更高级的客户端过程 (三)
-
发表于:
2022-7-1 19:11
11522
-
[原创]对于某游戏残端逆向分析 并同步使用更高级的客户端过程 (三)
继续往后跟这个 CheckPacketEndIndex 函数会发现这里获取了好几个字符串 看起来非常像Log函数
0 源码路径 函数名字 一个LogType 日志内容
然后老办法了 分析一下参数 int __stdcall GameLog(int a1, wchar_t* source_path, wchar_t* function_name, int logType, wchar_t* Format, ...)
hook干他
然后游戏的日志就出来了 方便我们后续寻找错误!
我们知道这个函数所有的字符串都是通过那个data段字符串解密而来的 我们hook把用到的字符串写到一个文件里 看看cmd packet noti paacket的包ENUM的名字 (图里可以看见log里用到了 NOTIFUNC_ENUM_NOTIPACKET_CERA)一个通知的收包名
拿到这些文本简单的自己写个小工具把他转成ENUM来看
然后对比服务端的 ENUM数值 就知道那些包的ID变了 还有新加了那些包
对比后发现cmd packet 603往后的都变了 noti pakcet 560 往后的变了 其余的没变多了一些活动东西
黄金哥布林 黄金蛋活动 SHOOTINGSTAR
服务端的PacketDispatcher::doDispatch分发包事件
服务端所发给客户端的包id对应也要修复,服务端有符号 就没什么多说的了 搜搜搜就出来了
成功进入游戏,使老服务端兼容新客户端,不过因为多了很多新的packet,很多活动功能还是不正常需要自己补.
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
最后于 2022-7-1 19:56
被aRax编辑
,原因: