我很担心javascript安全性,因为客户端可以查看和编辑代码,我知道为了克服这一点,我们可以使用ajax调用在服务器上运行关键进程。但最近我正在解析云代码,它的一部分运行在服务器上。我想知道这是否是JavaScript安全问题的答案,它是否安全?javascript客户端安全
回答
是Parse.com服务器端Javascript安全吗?
服务器端JavaScript是相对安全。对于Parse.com(我对他们的系统不太熟悉),它似乎接受客户端数据。 客户端数据始终不安全。这就是说,你可以使安全的解析它(双关语意图),以确保在运行它之前剥去潜在的危险。
这个系统的安全性取决于你编写代码的程度。
服务器端Javascript是否安全?
与上述相关的是,服务器端JavaScript可以是安全的,只要它是以安全的方式编写的。 IE中,只有数据被传递,任何需要安全的数据都会保留在服务器上,并且只能由服务器更新。
例如,如果您要更新游戏得分(取自某些parse.com示例),而不是向服务器发送要更新的分数,请将触发分数更新的操作发送给服务器,并让服务器解析操作并添加到分数。这是安全的。发送评分本身不是,因为评分可以由客户操纵。
是Parse.com客户端Javascript安全吗?
绝对不是。客户端掌握在敌人手中 - 永远不会有相信客户端不会操纵他们的数据和/或生成它的代码。
开发人员有责任确保您的数据仅由客户端无法处理的系统处理和处理。
那么,parse.com是否安全?
回应我已经说过的一切,parse.com是一样安全,因为你使它。它仅取决于您设计应用程序的程度。
服务器端Javascript是安全问题的答案吗?
服务器端任何东西都是固有地然后客户端更安全。 这是一个解决所有安全问题的一站式解决方案吗?编号错误编码(IE:SQL注入)甚至开放端口(IE:通过Web服务器的电子邮件转发)仍然存在很多危险。因此,这种方法有两个方面,确保服务器和保护代码。这些通常分为适当技能的人员(例如,开发人员不应被要求关闭服务器上的端口,例如,除非没有其他人这样做,并且您已经用完了受过训练的猴子的香蕉)。
但是,并非所有的东西都可以在服务器上运行。例如,捕获客户端输入和绘制元素到屏幕上是客户端必须接受的两件事情。 这就是你决定系统需求的地方。
就拿上面的例子中关于通过行动而不是得分数量张贴分数到服务器,它是固有更安全,然后发送了比分,但它仍然是不完全发送因为玩家的操作时的安全很容易欺骗系统发送重复的动作。
你可以开发一些逻辑来判断动作是否允许,或者有些甚至更疯狂的逻辑来决定一个玩家的动作率是否为人类,但是你可能永远不会让任何人将他们的得分报告给服务器,将会是最安全的,也会导致一场不太好玩的比赛。
决定什么样的领域可以或不可以保护,以及它对应用程序有什么方面(或者游戏 - 我使用游戏,因为parse.com的示例使用了游戏)总是有风险的。
进一步计算器相关阅读
这里有一些很好的说明有关JavaScript注入的特定漏洞: Javascript security risks?
这一个能直接打动客户端/服务器端验证: JavaScript: client-side vs. server-side validation
这里有一些关于“如何”缩小和混淆代码的注释: How can I obfuscate (protect) JavaScript?
关于在Javascript混淆,在这里看到大量的笔记它是(尤其是在评论)如何不安全: Hardest-To-Reverse JavaScript obfuscator
这很简短,服务器端的行动是我可能会去的。谢谢 – 2015-02-06 05:15:43
如果你真的关心你的JavaScript,然后你可以
1)收集在一个单一的JS文件的JS程序和使用js compress再压缩它,这将使其难以阅读和理解。
2)扰码/混淆使用JS scrambler您的JS代码,这将使它有点困难的破解者破解你的JS
然而,考虑到工具在网络上提供的繁多,在我看来,有恶意的黑客可能会随时危害JS。这可以通过在服务器端施加严格的安全协议来补偿。
希望它能帮助!
我知道我们总是可以压缩代码,但是这种方法并不是最安全的,用户可以随时解压缩它。 – 2015-02-06 05:29:27
- 1. 与客户端安全服务器javascript
- 2. Socket.IO客户端安全
- 3. JAX-WS客户端|用安全头发送客户端请求
- 4. 当客户端可以使用Javascript时客户端WCF服务的安全性客户端
- 5. 保护客户端数据安全
- 6. Bigquery客户端插入安全
- 7. WCF + Jquery/json消费客户端安全
- 8. Flash客户端 - 服务器安全
- 9. 安全的客户端脚本
- 10. PHP安全登录 - 客户端选项?
- 11. 客户端验证安全问题
- 12. 客户端 - 服务器REST APIs安全
- 13. 如何安全关闭rmi客户端?
- 14. JAX-WS客户端是否安全?
- 15. GWT春季安全 - 客户端
- 16. WCF安全 - 客户端授权
- 17. WCF客户端安全协商注销
- 18. 客户端的安全代理服务?
- 19. 添加客户端iframe的安全性
- 20. 安全地将OAuth令牌与javascript客户端进行通信
- 21. Stomp.js secure conneciton || Rabbitmq的JavaScript客户端安全连接
- 22. 如何让Javascript客户端创建一个安全的UUID?
- 23. Jersey REST服务器安全和Android客户端安全
- 24. javascript mysql客户端
- 25. Javascript客户端ORM
- 26. 如何通过第三方客户端保留后端安全
- 27. 安全客户端couchApp/CouchDB的用户认证
- 28. 安装Google.api.customsearch.v1客户端库
- 29. Cloudstack客户端安装
- 30. Firebird客户端安装
凡是需要用户保护必须在服务器上,而不是客户端上完成的。 – Barmar 2015-02-05 19:18:55
我在我的问题中已经提到过这个问题。 – 2015-02-06 05:16:22