如何防止javascript和html5游戏中的变量注入

时间:2014-07-30 03:20:49

标签: javascript html5 code-injection

我在我的网站上使用过这个html5 Snake游戏,但问题是它可以很容易被黑客入侵。

http://cssdeck.com/labs/classic-snake-game-with-html5-canvas

黑客可以注入分数并提交自己的分数。

无论如何都要保护脚本中的得分变量不被客户注入?

1 个答案:

答案 0 :(得分:7)

只要游戏完全在客户端实施,就不一样了。 “解决方案”是在服务器端实现游戏规则和存储,并且客户端主要是UI,但这对于这样一个简单的浏览器游戏来说可能是过度的。

你可以通过混淆代码来加强它,但这只会阻止那些实际上并不关心的人。

如果游戏是确定性的,您可以记录所有游戏“事件”并将其发送到服务器,计算得分。这样做会使伪造分数更加成功,但仍然可以伪造,构建这样的系统也需要做很多工作。