【问题标题】:Socket.io Security IssuesSocket.io 安全问题
【发布时间】:2011-11-19 00:14:37
【问题描述】:

我想知道如何保护我的 socket.io 从以下连接到服务器。

安全问题:

  • 什么可以阻止恶意用户通过客户端代码连接到套接字服务器?

例子:

OUTSIDE DOMAIN REQUEST var socket = io.connect('http://Mydomain', {port: 4000});
  • 用户似乎可以通过打开不同的浏览器窗口来创建数千个并发连接。

如何防止这些问题发生?

【问题讨论】:

标签: security node.js socket.io


【解决方案1】:

您应该能够在服务器端检查 HTTP 引荐来源网址是否正确。查看 socket.io 规范以获取有关 http 引用和握手的信息。

https://github.com/socketio/socket.io-protocol

0.8 也有推荐人验证。以前没用过,不过这可能是个开始寻找的地方:

https://github.com/LearnBoost/socket.io/pull/481

【讨论】:

  • 谢谢,但是如果有来自同一个用户的多个连接怎么办?
【解决方案2】:

好吧,如果您的(真实)客户端来自众所周知的位置,您可能希望在防火墙级别阻止其他所有人。假设您的服务可供所有人使用,您可能可以研究客户端-服务器握手机制。

【讨论】:

    猜你喜欢
    • 2012-08-24
    • 1970-01-01
    • 2010-12-24
    • 1970-01-01
    • 2018-11-09
    • 2014-08-19
    • 2011-11-08
    • 2022-01-16
    • 1970-01-01
    相关资源
    最近更新 更多