我有兴趣了解有关 Web 套接字安全性的更多信息。阅读 Web 套接字最初在 Firefox 中,出于安全原因被删除,现在添加回来解决了问题: http://news.ycombinator.com/item?id= 2600022
对它们的初步阅读似乎有很多漏洞的机会,就像操作系统中的传统套接字一样。
- Web 套接字有哪些安全风险?
- 现代浏览器目前如何缓解它们?
- 还应该做些什么来降低风险?
我有兴趣了解有关 Web 套接字安全性的更多信息。阅读 Web 套接字最初在 Firefox 中,出于安全原因被删除,现在添加回来解决了问题: http://news.ycombinator.com/item?id= 2600022
对它们的初步阅读似乎有很多漏洞的机会,就像操作系统中的传统套接字一样。
WebSockets 协议现在很难评估,因为它经常变化。在 Adam Barth 等人发现的 WebSockets 协议的 draft-hixie-thewebsocketprotocol-76 中的缺陷之后。几个月前,Firefox 在 about:config 首选项中禁用了 WebSockets 实现。从那时起,一个新的协议版本正在开发中,目前最高到 draft-ietf-hybi-thewebsocketprotocol-07,它试图修复发现的缺陷。浏览器可以快速适应新版本 - 参见例如Mozilla bug #640003。但是 - 另一方面,WebSocket 服务器仍然试图保持向后兼容性,例如 Socket.IO 服务器仍然支持 pre-76 版本。
因此,您可能仍然成功地尝试在浏览器之外连接到 WS 服务器,从而强制使用旧版本的协议(请参阅上面评论中已经提到的我的工具)。
但仍然 - 您无法通过 WS 连接发送完全任意的流量。帧以 NUL 字节开头,以 \xFF 结尾,中间是 UTF-8 字符串(+ 握手),因此跨协议攻击并不那么容易执行。不过,我宁愿使用 WSS:// 加密版本而不是明文版本。
以下是一些讨论 WebSocket 安全性的有用资源——它们都非常详细:
[披露:我为 Kaazing 工作。]
禁止WebSocket 协议的不仅仅是Mozilla。许多组织正在使用深度数据包检测、UTM/高级防火墙技术和/或安全 Web 网关来阻止 WebSocket 交互。让它正常工作可能是一个障碍。
如果您想了解有关 WebSocket 协议安全问题的大量信息,请务必查看 CMU 的这篇论文,题为 [ PDF Talking to Yourself for Fun and Profit PDF ]。