给的代码或思路!

解决方案 »

  1.   

    你要分析对战或者说网游的数据包,我认为有难度呀。网络数据的传递,一般源方依据自己的通讯协议,产生数据包,加密处理,然后
    传递到tcp/ip层,再打包成下层数据包(比如通过加ip包头),然后在网络传输,
    目的方接受到包后,去掉包头,等到的是最初产生的数据包,这一层对用户来说是透明的。这就是说:目的方接受到的是源方依据协议并加密而产生的数据包,它首先解密
    然后依据自己的协议进行解析,得到正确的数据。所以,你要解析这样的数据,你应该明白它的加密算法和协议,很难的。我认为,截获是没有用,办法只能是产生欺骗是数据包,而且是饶过协议打包和加密
    阶段,我的意思是说,你的包数据必须还要让游戏程序去依据协议解吸和加密,
    才能达到欺骗的目的。那些外挂程序大部分就是这种方法实现的。
      

  2.   

    有个软件sniffer是进行数据包分析的,不知道对你是否有用
      

  3.   

    游戏都回开端口,接发数据
    用sinffer在特定的端口监听,获取数据包
      

  4.   

    对战平台的原理讨论
    http://search.csdn.net/Expert/topic/2022/2022890.xml?temp=.5852625
    我个人认为和抓包并没有太大关系
      

  5.   

    哦,我这里有现成的HOOK wsock23.dll.send recv.........的源代码,要了来取只要是网络上的东东,我把他HOOK下来解包就行啦,此山上我开,此树是我栽,要想从此过,留下数据再走吧,呵呵
      

  6.   

    有那么麻烦?
    我觉得只要抓到游戏的数据包,然后由客户端发送到服务器端,然后由服务器端发送给相应的客户端,如果是广播,则发送到所有客户端。
    个人觉得,TCP/IP和IPX的协议中,数据包格式都是有规范的。所以并不存在加密解密的问题。当然如果想要更改游戏数据就需要解析游戏数据包了。但做一个对战平台,只需要转发数据包即可。除非游戏在数据包中额外的添加了一些地址信息,比如说数据包中指定了目的IP(但做为常见的局域网游戏,应该是不会这么复杂的,没有必要。)。客户端还需要将服务器端发送来的数据还原成原来的游戏数据发送给游戏进程。
    同时,像浩方那样的对战平台,每个人都有不同的登陆帐号,所以同一个房间里,登陆的人可以分配一个虚拟的子网IP,用来区分各个客户端。
      

  7.   

    我觉得
    第一,对战平台客户端不可能是用的嗅探的方式抓包,比如Winpcap/RAW SOCKET,这种方式抓包依耐系统的性能,就算不玩游戏,也存在漏包的机率,更何况类似cs这类游戏那样的耗资源,漏包的情况一定是很严重.所以,api hook/spi/ndis这些技术应该才是正确的选择.第二.有关加密解密,这根本是多余,我相信不会有哪个对战平台会做这种画蛇添足的动作,他只不过是转发一下数据包而已.人家游戏本身都不用加密,他费这劲干嘛,还影响效能.