aaaaaaaaaaaa
代码改变世界

wXgame上某游戏封包分析

2021-02-25 13:44  二进制乐谱  阅读(673)  评论(0编辑  收藏  举报
wXgame上某游戏封包分析
 
号注册10多年了,某天有个hr问我你在XX论坛发了几个贴,我突然发现没有,闲来无事发一个基础贴吧。
近几年都在做android逆向,很少再关注windows
本贴不教大家做辅助,纯学习,娱乐
  
工具x64dbg
 
发包特征码8B 45 08 69 C0 D8 00 00 00 8B F9 83 BC 38 58 00 02 00 02,定位游戏发包函数
(游戏线程发包,调用wsasend发包,下断返回几层很容易找到此函数)
 Ctrl+b直接定位
 
 
 
下断发包,函数返回上层附近就是一个加密函数,有的包也不会加密
Bb7210函数有两个参数,返回调用处,注意看c17dbd,这里压入一个buffer,分析发现,这里就是明文,1047860就是加密函数
 
 
下面就自己写一个工具分析封包,之前用c++也写过,这里用lazarus也写了一个
Hook是用的微软的detours,lazarus的好处就是不用需要写裸函数,各种界面显示不用自己发消息,mfc多线程界面刷新还要自定义消息,很是麻烦。
 
这里直接hook加密函数,显示明文封包,
 
 
 
效果图是直接hook的发包函数,第3字节是01是说明这是一个加密包,为0是明文包,下面都是人物移动时所发的包
 
 
比如这个包
07060000000000200200000045000000CDE401000100000000000000000000000000000000000000000000000000000009000000
第3字节为0,是竞技模式下双方强制pk的包,字段中 01和09为竞技场玩家序列号,发此包可强制两位玩家pk,这个是个大bug,还有其它很多严重性的问题。
 
看看加密函数,一个循环,ebp+8为传进来的buffer,ebp+C为明文长度,esi数组下标
 
 
总结一下:比较简单,游戏发包,可以实现一些特殊的功能,远距离打开仓库,存放物品,强制pk等。

 

aaaaaaaaaaaaa