大神论坛

找回密码
快速注册
查看: 3343 | 回复: 6

[源码] 热血江湖 满线自动查询器制作游戏分析与源码分享

主题

帖子

9

积分

初入江湖

UID
21
积分
9
精华
威望
18 点
违规
大神币
68 枚
注册时间
2021-03-21 09:22
发表于 2021-04-05 20:30
本帖最后由 rongjie000 于 2021-04-05 20:30 编辑

                                                                                                                                     热血江湖满线自动查询器制作

        N久没玩网游,某天心血来潮想去了热血江湖,如是用以前的账号,尝试着无聊一下,结果发现热血江湖现在竟然异常火爆,服务器满线,尝试着登录的几个大号都满线,不只知道啥时候能登录,郁闷了一下,于是便有了下面的文章。
        既然都满线,那不如试试弄个查线器,定时看看那个线路能进入。其实工具代码很好写,难得是思路。既然要做个查线器,查线肯定和网络有关,有了这想法,便拿起大学所学的WIRESHARK抓了下包,功夫不负有心人,分析了数据包,终于找到了思路和方法。具体操作,听我一一道来。-_-
        WIRESHARK抓包还是很强大的,既然是数据包,肯定少不了IP和端口,那么IP和端口如何得到?方法有二,先说其一。首先打开热血江湖安装包,目录文件如下:
                                                                            
        看到这些文件,先不管三七二十一,直接当文本打开,打开后发现,有两个文件对于咱们有用,一个是ServerInfo.txt,另一个是Session.cfg。下面分析一下这两个文件:
                                         
        比较两文件前面10行,会发现一个是10个服务区,一个是10个域名,验证后不能发现域名对应的是IP,第二个文件的11到15猜测应该是端口,至于端口怎么对应,咱暂时可不用关心,后面可以通过数据包知道。SO,这里选择第8个(要发不离八,哈哈)电信四区做测试,即域名sessiond4.rxjh.cdcgames.net。有了域名,如何得到IP?这里用到一个命令nslookup,于是CMD,nslookup sessiond4.rxjh.cdcgames.net得到结果如下:
                                        
        发现Addresses既然有三个,咋办,哪一个才是我们需要的?不急,WIRESHARK会告诉咱们,咱们可以在数据包中,一个个是试验。到此准备工作已经完成,下面就是干货了。
        打卡WIRESHAR,选择自己的真是网卡:
                                        
        打开游戏,选择电四:
                                        
        输入账号密码,登录游戏到选区界面,然后停止抓包:
                                       
       下面开始分析数据包,前面得到的3个IP,咱们一个个试验,发现第一个218.30.83.35是咱们需要的(这个IP抓包可能每次会变化,但是没关系,都在这三个IP中),试验和筛选在WIRESHARK过滤框中输入如下操作:
                                     
       一端是咱电脑自己的IP,一端是热血江湖服务端的IP。得到对应的数据后,就是一个个的分析。分析过程中,对于有SYN和 SYN,ACK 或只有ACK的数据可以不用看,这是TCP三次无握手的数据包。我们主要查看Info一列中的LEN 不为0的数据包。经过分析吗,你可以在包中找到自己的账号(账号未加密)和加密的密码。最终,发现可疑数据包如下:
                                     
        这是服务器返回给咱的数据包,在数据包内容中发现有VIP,-1,-2等字样,同时VIP,-1,-2前都有相同的D7CFD4C2,经过字符集比对不难发现正好的是电信四区紫月的GBK编码,于是分析比对后不难发现这是咱们需要的服务器线路的状态数据(谢天谢地,竟然没加密),对半前面的服务器状态显示图分析数据知道,-1,-2等后的一个字节表示服务器的占有状态(百分比),可以看到(VIP)紫月-1 0x17(23),除了紫月-9,其他都是0xfa, 于是不难结合前面的图,FA表示服务器满员状态,紫月-9为0x63(99).
                                    
        到此,服务器的状态数据咱们都得到了,但是不可能每次都是尝试登陆抓包得状态啊!咱们得写个网络连接,自动得到这些信息啊。分析这个包的前一个包(咱自己的机器发给热血江湖服务器的数据),发现给服务器发送了一个长度为4字节的16 80 00 00,同时端口为13101(在上面的配置文件第12行中)。
                                     
       如上图,熟悉网络连接的人都知道,这应该是获取服务器状态的指令(咱们得先请求数据,发送指令,服务器才返回咱们需要的信息,而且从这个数据看,并未与账户密码关联,省掉咱们很多麻烦)。有了这些,咱便可以编写一个网络通信程序,解析得到咱们想要的数据。
       编程部分就暂且不讲解了(体力活),直接将DEMO提供给大家。DEMO中的测试程序如下(可自己添加一个定时器,定时的刷新显示状态):


版权声明:本文由 猪行天下 原创,欢迎分享本文,转载请保留出处


下方隐藏内容为本帖所有文件下载链接:

游客你好,如果您要查看本帖隐藏链接需要登录才能查看, 请先登录

主题

帖子

27

积分

初入江湖

UID
14
积分
27
精华
威望
54 点
违规
大神币
68 枚
注册时间
2021-02-11 06:45
发表于 2021-04-17 09:07:32.0

查看下,收藏一波先,哈哈[坏笑]

主题

帖子

1

积分

初入江湖

UID
339
积分
1
精华
威望
2 点
违规
大神币
68 枚
注册时间
2022-05-24 14:48
发表于 2022-05-24 14:51:35.0

学习学习

主题

帖子

2

积分

初入江湖

UID
400
积分
2
精华
威望
4 点
违规
大神币
68 枚
注册时间
2022-09-16 23:37
发表于 2022-09-16 23:40:56.0

niubi

主题

帖子

2

积分

初入江湖

UID
400
积分
2
精华
威望
4 点
违规
大神币
68 枚
注册时间
2022-09-16 23:37
发表于 2022-09-16 23:54:52.0

下不下来啊


主题

帖子

9

积分

初入江湖

UID
24
积分
9
精华
威望
18 点
违规
大神币
68 枚
注册时间
2021-03-21 09:25
发表于 2022-09-17 12:45:07.0

看下先

主题

帖子

23

积分

初入江湖

UID
70
积分
23
精华
威望
46 点
违规
大神币
68 枚
注册时间
2021-05-12 14:18
发表于 2022-12-14 19:53:07.0

收藏


返回顶部