WebSockets...它们不安全吗?

Posted

技术标签:

【中文标题】WebSockets...它们不安全吗?【英文标题】:WebSockets... Are they unsafe? 【发布时间】:2010-10-11 12:16:12 【问题描述】:

我正在研究 html5,我偶然发现了这个网站 http://www.rumpetroll.com。这是一个非常酷的网站,但后来我注意到人们可以相对轻松地使网站崩溃,因为他们可能会超载发送消息方案......我还看到各种 javascript 注入黑客正在对它进行对接加载用户,这让我思考?

包含 websocket 是否真的会扰乱您网站的安全结构,我的意思是,我们是否需要格外小心以避免黑客攻击和崩溃?请为我提供有关 websockets 的相同或良好教程源的参考文章...谢谢:)

【问题讨论】:

2010 年,当你问这个问题时,答案很简单:websockets 在协议级别很容易受到攻击。 (这最终导致在 Opera、Firefox 和 Chrome 中禁用它)。但现在 - 规范已经稳定,甚至 IE10 也会支持它们。 【参考方案1】:

与任何技术实施一样,安全性取决于您。

php 会话并不像您想象的那样安全。查看 Chris Shiflett 的文章以了解这些内容。

http://shiflett.org/articles

对于这些新的 Javascript 技术,我建议阅读有关跨源资源共享、跨文档消息传递和 Web 套接字的内容,以进一步了解实现和安全缺陷。

开始搜索这些主题(以及许多其他主题)的一个好点是http://caniuse.com/。

请记住,任何原始实现都是安全漏洞。对于您想要实现的任何功能,始终需要解决安全问题。

【讨论】:

【参考方案2】:

Web 套接字是一种客户端-服务器端技术,因此取决于服务器实现以及浏览器。您必须始终格外小心,以避免黑客攻击和崩溃,使用新技术更是如此。我的建议是遵循良好的安全准则,并从头开始设计需要保护的东西。我无法为您提供比网络更多的文章或教程。如果你想深入了解一个主题,就买一本书,如果还没有写过书,你有幸成为它的先驱:)然后你可能会写一本书,致富。祝你好运!

【讨论】:

【参考方案3】:

有一个不错的WebSocket Tutorial 会教您基础知识,但真正的安全性和实施取决于您。我在后端做了很多 额外的事情来覆盖,以防它被滥用,我没有提到,因为它确实超出了基本教程的主题。

检查正确的域并进行相应的限制。了解您不能永远信任客户端。拥有大部分可用客户端代码的必要性意味着您必须验证每条消息以确保它确实来自您的应用程序。

【讨论】:

以上是关于WebSockets...它们不安全吗?的主要内容,如果未能解决你的问题,请参考以下文章

同时使用 HTTP 和 WebSockets 时的 API 命名约定

使用正确的 SSL 证书连接不安全(Websockets)

使用 stunnel 和 Ratchet 保护 websocket。连接已关闭

websockets django nginx webssh

来自服务器端的 WebSockets 握手回复,草稿 00

HTML5 Websockets 可以直接连接 2 个客户端(浏览器)而不使用服务器吗? (P2P)[重复]