免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!
内容参考于:易道云信息技术研究院VIP课
上一个内容:接管游戏接收网络数据包的操作
现在已经把游戏的封包的结构、数据的通信都分析了,相应的代码也写了,现在看看它有哪些不合理的地方,之前的 网游逆向分析与插件开发 里分析的游戏是韩国人做的游戏,现在看的游戏是我们国家做的游戏,通过分析的过程,可以看出韩国人做游戏很有经验更成熟,然后由于它很成熟分析的时候还比较好分析,现在的这个游戏分析的时候比较难以分析,就是因为它用了一些非标椎的技术,但是它也犯了很多错误,然后接下来盘点盘点一下它犯的错误,知道了这些错误,我们就不要再犯了。
首先第一个:如下图红框,就是游戏或任何软件运行中都难免会出现一些错误,这个使用,会记录日志或者有一个提示什么什么错了,然后开发人员或者维护人员为了方便,可以在下图红框位置非常明确的看到什么函数错了,什么错了,这些东西这样写就比较不好,这种东西要优化成一个内部的错误编码,比如只记录一个 ERROR_0001 这样的东西,然后想知道这个东西是什么意思就去查内部的错误文档,这样外部逆向分析人员看不到内部的错误文档,它是无法知道这是什么的,这样就可以增加逆向分析难度
第二个:这个游戏它处理完数据包之后没有加密,但从逆向分析角度来说,加密不加密区别不大,因为逆向的时候你加密了我可以找你不加密的地方,你的数据是一定会有未加密到加密的过程的,所以对逆向来讲无所谓,但对于渗透来讲这个事的角度就不一样了,渗透它是不逆向客户端的,比如通过中间人攻击截取通信,截取之后就可以看到通信的数据,然后由于未加密数据就直接可以看到账号和密码,如果用户用的vpn上网的那它的账号就泄露了,所以不管是用异或还是一个简单的恺撒加密或者其它简单的处理,这都是一个应对中间人攻击很好的方法,所以加密是一个非常比较做的一件事情
然后经过之前的分析,可以看出对于一个网络游戏来说最薄弱的地方就是它的网络通信,一般调用的地方就是网络发送数据包的地方,比如伪造数据包的发送就是一个很常见的操作,所以这种重要的代码就要加密,加密之后逆向的人就不知道该怎样调用了,或者把重要的代码藏起来让人很难找到。