zoukankan      html  css  js  c++  java
  • wXgame上某游戏封包分析

    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等。
  • 相关阅读:
    Swift扩展(Extension)
    Swift构造器(Initializer)与析构器(Deinitializer)
    Swift下标
    Swift方法
    Swift属性
    Swift类与结构体
    Swift闭包(Closure)
    python调用c++/c 共享库,开发板上编译的一些坑!
    python调用c++类方法(2)
    ubuntu 18.04 gcc g++降级4.8版
  • 原文地址:https://www.cnblogs.com/fply/p/14446487.html
Copyright © 2011-2022 走看看