来自第三方黑客的基于javascript浏览器的游戏有多安全

How secure are javascript browser-based games from third party hackers

本文关键字:游戏 浏览器 安全 javascript 第三方 黑客      更新时间:2023-09-26

如果我在我的网站上放置了一个javascript游戏,并且游戏的一部分要求提供用户地址(例如,为了引用本地地标),是否有可能有第三方劫持我的游戏来发送用户地址?

我知道javascript不是很安全,但我也认为没有人能够在不入侵我的网站的情况下劫持我的javascript代码,所以在这方面是安全的。

我是不是太天真了?

只是问,因为我有一个游戏的想法,我正在努力思考。

如果你认为你的用户地址真的是一个秘密,那么是的,你可能还有一些工作要做:

XSS攻击

您需要非常小心如何显示用户输入。例如,如果我说我的名字是<script>alert('hello world')</script>,你真的会在网站上打印出来吗?如果是这样,可以将自己的JavaScript插入到您的应用程序中。下面是一个XSS攻击的例子,维基百科提供了更多信息。如果攻击者可以插入自定义JS,他们就可以拦截地址、密码或cookie等秘密用户输入。

HTTPS

当您的web服务器将其消息发送回用户时,消息不会直接发送到用户的计算机。它首先在接力赛中通过中级计算机。如果攻击者在中继竞赛中控制了其中一台计算机,他们可以修改服务器的消息并插入自己的JS。攻击者再次获胜。为了避免这种情况,您需要HTTPS,这是一种对消息进行加密的协议。你还需要一种叫做证书的东西;StartSSL的销售价格合理。

请注意,攻击者不必是坐在几英里外的某个公司或政府来控制中间计算机。例如,它可能是有人在你学校校园的未加密Wi-Fi网络上运行Firebug。

但实际上

构建web应用程序的更好方法是,一开始就不要将用户地址发送回服务器。信息安全的首要规则之一是很难做到正确;你越能依赖别人的工作就越好。相反,可以在JS代码中保留一个固定的地标列表。或者使用由谷歌地图等服务提供的公共API,该服务已经通过HTTPS运行。