游戏开发论坛

 找回密码
 立即注册
搜索
查看: 6395|回复: 0

从开发者的角度谈游戏防弊:盗号、网络攻击与诈骗

[复制链接]

1万

主题

1万

帖子

3万

积分

论坛元老

Rank: 8Rank: 8

积分
36572
发表于 2016-9-20 15:53:17 | 显示全部楼层 |阅读模式
文/旭曜灵

  承上篇:从开发者的角度谈游戏防弊:盗版、山寨与外挂

  五、修改存储器、存档(金手指)

  游戏中许多数值和状态都是暂存在存储器或存档的,例如角色的HP、技能冷却、道具数量等等,所以如果让玩家任意修改,就可能产生严重问题。

  应对方法:

  单机游戏:

  将程序码混淆、重要数值随机加密、隐藏存档位置、存档不能给其他账号共享......等等。

  如此可以提升玩家修改资料时的难度。

  象是《RPG制作大师》所做的游戏,暂存于存储器中的数值,都是经过「乘以2再加1」的固定加密,

  例如游戏中的100金币就会记录为201,这么一来,不知道的人就难以修改了。

  (但就像现在我们都知道了,所以才需要随机加密)

1.png

  如这款《Cookie Clicker 饼干点击者》以前还没有防止修改,几乎什么都可以靠改参数改出来,但现在似乎已经没那么容易了。

  在线游戏:原则就是「不信任从客户端传来的任何信息」,重要资料都存在伺服端,重要数据和结果都在客户端和伺服端进行双重验证及计算......等等,但也不仅限于这些而已。

  而像《Diablo 2 暗黑破坏神2》的做法是,单机模式离线游玩时,随便玩家修改也无所谓,但是到了在线天梯竞赛时,重要资料都存在伺服端做验证,那就比较难修改了。

  至于程序码混淆可以达到什么样的效果呢?这个国际 C 语言程序码混淆大赛或许可以作为参考

  (但是搞得这么夸张,大概连程序设计师本人都快看不懂了)。

  六、伪造、修改、复制封包

  如《RO 仙境传说》当中,玩家用外挂可以不消耗道具「苍蝇翅膀」就进行瞬间移动,或以人手不可能达到的高速度喝补血药水,就有可能是透过传送自订的游戏封包所办到。

  例如原本使用苍翅瞬移的正常流程可能是──

  1) 玩家按下使用苍翅的快捷键

  2) 客户端判断身上是否有苍翅

  3) 如果有,就扣除一个苍翅

  4) 向伺服端发送「玩家瞬移」的封包

  5) 玩家执行瞬移

  但是外挂略过了前面的步骤,直接发送第4步骤的封包给伺服端,而伺服端未检查此瞬移的合理性就允许,于是就能在未消耗道具的情况下瞬移了。

2.PNG

  如《Candy Crush Saga》当中,这个高到夸张的过关纪录,也很可能是透过传送窜改过分数的过关封包来达成的。

  应对方法:

  伺服端固然必须验证每个封包的合法性,也必须防止同一个封包因Lag或复制而重复发出。

  不过伺服端虽然可以任何事都加以验证,但也肯定会造成效能上的负担,所以也得依重要程度来取舍,较轻微的就略过,或是偶尔才检查一次。

  七、在线游戏利用Bug(洗钱、复制之类)

  应对方法:

  除了在开发时尽量设想周全、多加测试、建立好Bug回报机制,还有个保险做法是监控每天服务器中较重大的变化,发生重大问题时,自动以简讯等方式实时通知负责人,并且将服务器中的游戏资料保存至少1~3个月,随时可供回溯。

  举例来说,像《RO》当中就曾经发生过精鍊装备的Bug,当时游戏中的四级装备最高可精鍊到+10,但机率非常之低,这时市面上却出现了大量的+10四级装备,于是玩家之间掀起了恐慌,深怕受到回溯牵连。

  若官方要等到这些非法道具、游戏币大量流入市面甚至交易网站才察觉,那就太晚了,有可能连回溯都不足以解决;

  但如果官方有后台程序自动监控,当某个玩家精鍊出+10四级装备时自动记录、某一天产生两件以上+10四级装备时自动传简讯警告,那么就可以在事态恶化之前及早处理了。

3.png

  在《RO》精鍊装备时若不想冒着搞坏装备的风险,也就只能弄出+4的装备了。

  毕竟负责精鍊的NPC可是出了名的奶油手,动不动就手滑啊!

  八、DDoS(阻断服务攻击 )

  所谓的DDoS,简单来说就是利用木马入侵的大量僵尸计算机连线,来挤爆服务器。

  这也是很难防范的,因为DDoS技术不难、又不容易追查源头的真凶、也很难分辨对方是进行DDoS的人、或只是正常连线的玩家。

  应对方法:

  限制连线资格(例如需要先购买游戏,或申请账号需要实名制、绑定手机验证等等)、扩充硬设备(但代价昂贵),不然就是报警追查了。

  九、盗账号

  若玩家本身资安常识不足,爱用外挂、VPN、或和人共享账号、使用容易破解的密码,那么官方保护得再好也没用。

  应对方法:

  倡导资安观念、要求玩家设置安全性较高的密码、绑定登入位置或硬件、通讯锁、仓库锁、重要物品禁止或延迟交易......等等。

4.png

  Steam的通讯锁,能帮助玩家更好地保护自己的账号。

  而游戏这边,亦需要给有价值的道具都赋予唯一编号,如此不管道具是被复制、或流落到他人手中,都可以轻易查出流向。

  十、诈骗

  应对方法:

  花样百出、防不胜防的诈骗,恐怕也只能在游戏中多提醒玩家保持警觉了。

5.jpg

  如《Tree of Savior 救世主之树》就会在过场景时提示,

  真正的GM外观和一般玩家大不相同。

  而将游戏中的对话、交易、拾取道具等纪录都存成Log备查,也会在事件发生时对厘清真相大有帮助,还有就是靠客服的经验累积了。

  以上就是这次的分享了,若能起到抛砖引玉的作用就更好了,欢迎大家留言补充指教喔!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-3-29 06:39

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表