我要玩石器时代突破多开限制与防外挂破解

2018-01-20 19:42:28 石器技术 石器时代TV

石器时代是我第一款接触的网游,最近实在有点没事干所以去找了石器时代私服玩

随便搜索了下发现有在百度推广的私服,特色就是支持手机端果断就选择了这个,也就是我现在也在玩的SA。

下载PC客户端后发现竟然只能双开.....这让我这类喜欢5开挂一队的玩家来说无法接受。

而且无法使用传统的SACH,STW外挂,也就是所谓的无挂服。

分析发现客户端用的是VM壳,无法在虚拟机下运行,你本机如果安装了sandbox之类的有服务在运行客户端也会打不开。

我所知道的游戏防止多开的技术也就那几种。。。

1:检测进程名,并获取路径进行对比

2:检测互斥体

3:检测窗口类名,窗口名

作为业余c#程序猿的我,立刻打开VS,写了一个小程序把客户端看着像用来检测多开

的515sa ,CheckForUpdate 互斥体通过复制句柄并关闭源句柄的方式和谐掉(Mutant),并且修改了窗口标题。

接着我就打开第三个客户端.......没想到结果还是不行!



靠...这是什么鬼



随便找了款行为监控软件发现第一个客户端打开的时候会在%temp%目录下建立twston0与wincder.log文件,第二个客户端会建立twston1文件。



twston0与twston1文件都是直接由客户端占用着。



那么检测多开的方法已经大概清楚了。



检测方法:检测%temp%目录下twston0与twston1文件是否可写来判断开了几个客户端,如果可写则建立,不可写尾号+1




绕过方法1:360直接强制删除文件即可。也可以用上述提到的复制句柄并关闭源句柄的方式和谐掉(File)




绕过方法2:用其他用户运行客户端即可(Shift+鼠标右键 -> 以其他用户身份运行 ,这个方法很和谐,因为每个用户的%temp%目录是独立的)





当我以为一切就绪的时候发现还是不能,我直接复制客户端到其他目录试了一下,成了!



原来客户端还检测当前目录下运行了几个515sa.exe 如果超过2个则不运行。




到此为止第一个版本的防止多开已经成功绕过,大概挂了几周后出现了新的变化!



他们可能发现了我在多开或者有挺多人在多开的,这次在服务端进行了限制。


新的多开限制表现为:同一个局域网下,用多台电脑开多个客户端不会被服务端自动断开连接。


但是如果你是一台电脑开了超过4个客户端,服务端那边会自动断开你最后连接的2个并且在屏幕上打出提示。


他到底是如何抓到我多开的呢,又如何分辨局域网内的多个设备的呢?





发表评论: