0


游戏协议安全测试

协议测试是什么?

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

协议测试的作用是什么?

协议测试的作用是测试服务器逻辑的漏洞,避免游戏上线后被外挂团队针对性的开发损害游戏利益的 “封包” 挂(外挂圈习惯将客户端发送给服务器的协议称为封包),比如下面列举的例子:
  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

标签: 服务器 网络 运维

本文转载自: https://blog.csdn.net/display08/article/details/126171900
版权归原作者 display08 所有, 如有侵权,请联系我们删除。

“游戏协议安全测试”的评论:

还没有评论