5

与nowjssocket.io聊天是您可以使用它们执行的最简单的练习之一。我想使用 nowjs 的 Group 对象实现多房间聊天(房间数量和登录用户数不固定)。

我还没有直接使用 WebSockets,我想知道存在哪些安全问题。例如,我必须多久检查一次身份验证?

攻击者是否有可能“劫持”socket.io 连接,我该如何阻止它?

还有哪些其他安全陷阱需要关注?

4

1 回答 1

12

中间人当然是一个考虑因素。不过,最大的安全问题是 XSS。

这个有用的 SO 线程建议:

  1. socket.io 0.8 内置了推荐人验证
  2. 如果聊天来自已知来源,请在防火墙处阻止多余的连接

这篇内容丰富的文章建议:

  1. 不要相信客户
  2. 使用 SSL 加密
  3. 检查原产地
  4. 防止 XSS(清理客户端输入!)
  5. 不要以为它是浏览器

这个有用的线程说要在 socket.io.connect(...) 上设置 secure:true

我建议采纳所有这些建议:)

于 2011-12-23T17:09:28.330 回答