在 now.js/socket.io 聊天中增强安全性
Posted
技术标签:
【中文标题】在 now.js/socket.io 聊天中增强安全性【英文标题】:Enhancing Security in a now.js/socket.io chat 【发布时间】:2012-01-26 22:54:53 【问题描述】:与nowjs 或socket.io 聊天是您可以与他们一起进行的最简单的练习之一。我想使用 nowjs 的 Group 对象实现多房间聊天(房间数量和登录用户数不固定)。
我还没有直接使用过 WebSockets,我想知道存在哪些安全问题。例如,我必须多久检查一次身份验证?
攻击者是否有可能“劫持”socket.io 连接,我该如何防止?
还有哪些其他安全陷阱需要注意?
【问题讨论】:
【参考方案1】:中间人当然是一个考虑因素。不过,最大的安全问题是 XSS。
This useful SO thread 建议:
-
socket.io 0.8 内置了推荐人验证
如果聊天来自已知来源,请在防火墙处阻止多余的连接
This very informative article 建议:
-
不要相信客户
使用 SSL 加密
检查来源
防止 XSS(清理客户端输入!)
不要以为它是浏览器
This useful thread 说在 socket.io.connect(...) 上设置 secure:true
我建议采纳所有这些建议 :)
【讨论】:
以上是关于在 now.js/socket.io 聊天中增强安全性的主要内容,如果未能解决你的问题,请参考以下文章
VirtualBox中Centos安装增强功能及共享文件夹的挂载