游戏协议安全测试
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
漏洞分析工程师:
软件漏洞分析
病毒分析工程师:
软件漏洞分析
内核安全工程师:
内核开发工程师:
软件逆向
以上是关于游戏协议安全测试的主要内容,如果未能解决你的问题,请参考以下文章