游戏协议安全测试

Posted display08

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了游戏协议安全测试相关的知识,希望对你有一定的参考价值。

协议测试是什么?

  测试人员通过第三方工具篡改游戏客户端发送给服务器的协议,达到测试服务器逻辑、挖掘游戏漏洞的一种测试行为,称之为游戏协议安全测试。

协议测试的作用是什么?

  协议测试的作用是测试服务器逻辑的漏洞,避免游戏上线后被外挂团队针对性的开发损害游戏利益的 “封包” 挂(外挂圈习惯将客户端发送给服务器的协议称为封包),比如下面列举的例子:
  1.发送负数,比如购买一个道具需要花一百金币,在正常的协议中,金币数是正数100,服务器收到后在用户的帐号中减去100,实现从用户帐号扣除金币。如果此时把正数改成负数,服务器如果没有做安全检查,直接减去负数,负负得正,等于变相的给用户帐户增加了金币,实现金币盗刷攻击。
  2.A申请B加好友,B点击同意A申请,录制B产生的协议,然后更改ID为其他玩家ID,可以实现强制加他人为好友。
  3.录制领取成就奖励的协议,将ID更改为没有完成的成就任务ID,发协议直接领取成功。
  4.之前还发现过导致服务器宕机的BUG。
  5.商店购买协议,将数量字段修改为 2147483647,发送协议后,钻石数量直接变为21亿。
等等,协议测试可以发现的BUG种类非常多。
 如果上述 BUG 在研发期间没有被发现,发布到外网,一旦被外挂团队利用,游戏将遭受重大经济损失,被迫回档,严重的甚至可以让游戏直接倒闭。换句话说,协议测试可以帮游戏公司挽回重大损失,跟利益直接挂钩,发现一个致命级别的可以挽回几万到几十万的潜在损失。

协议测试工具

  TcpEngine1.3.0向我们提供游戏安全测试的下列功能,

  1.截取网络数据,提供的功能是启动一个代理服务器,客户端和服务器之间协议都通过代理服务器转发。

  2.提供半编程的解析协议方案,游戏协议多数是字节流协议,解析规则非常方便的把字节流协议解析成正常数据。

  3.提供阻塞协议;单条转发;修改协议再转发等功能,安全协议就用到这部份功能,提供了对特定协议阻塞,并把正常数据修改成非法数据再转发,以实现对该协议的安全测试功能。

  更多详细教程请参考:https://blog.csdn.net/display08/article/details/125960140

网络安全职位与需要掌握的知识

脚本层:

前端安全工程师:

      • 网站开发工程师:
        • HTML/CSS
        • PHP/JSP/ASP
        • SQL
      • HTTP协议
      • 安全运维工程师:
        • Sniffing/SQLI/CSRF/XSS
        • 网络运维工程师:
          • Python
          • 网络运维

核心层:

渗透测试工程师:

  前端安全工程师:

  软件漏洞分析:

    游戏安全工程师:

      调试破解:
        软件逆向

      协议分析:

        软件逆向

        TCP/IP

漏洞分析工程师:

  软件漏洞分析

病毒分析工程师:

  软件漏洞分析

内核安全工程师:

  内核开发工程师:

  软件逆向

 

以上是关于游戏协议安全测试的主要内容,如果未能解决你的问题,请参考以下文章

网络安全中需要注意的服务及端口分类

网络安全——网络层IPSec安全协议

网络安全——传输层安全协议

网络安全协议

网络安全——数据链路层安全协议

网络安全——网络层安全协议