是否可以安全地将JavaScript代码发送到用户的浏览器?

时间:2016-04-14 03:05:40

标签: javascript security browser client-server mutation-events

是否可以将javascript代码发送到客户端,并让它将信息发送回服务器,而无需用户拦截,查看或更改它。据我所知这是不可能的,但我不确定某些实时协议,如socket / ajax。有人可以拦截网络套接字吗?

如果无法做到这一点,是否有一个聪明的解决方案来验证代码是否未被更改,或者至少使代码更改变得更加困难?也许Dom Mutation-Events?如何混淆代码/数据的某些敏感部分?

即:Google Analytics如何知道给定用户未创建错误数据?

1 个答案:

答案 0 :(得分:2)

没有

任何客户端都可以抓取,可以阅读,被盗或更改。

永远不要相信客户端发送到您服务器的任何内容。即使由客户端代码生成,客户端代码也可能已被更改,这意味着数据不可靠。甚至可以反编译Flash,也可以操纵通过主机浏览器发送的请求。

信任级别仅限于这样一个事实:您可以合理地预期在使用HTTPS时数据不会在传输过程中被更改(当然需要注意)。这只是用户和服务器之间的信任关系,因此不会考虑应用程序的恶意用户或用户是否已被入侵。