套接字劫持
不幸的是,跨站伪造请求攻击不限于HTTP协议。在大部分的实时应用中套接字劫持(也就是众所周知的CSWSH)是一个容易让人忽略的乳垫。幸运的是,因为Sails将HTTP和WebSocket请求视为头等请求,所以内建的CSRF protection和configurable CORS rulesets都可以应用到这两个协议上。
你可以通过使能内建的config/csrf.js
保护来阻止CSWSH攻击并确保_csrf
令牌和所有的入口socket请求一起发送。另外,如果你计划允许跨域套接字连接到你的服务器,那么你需要配置你的CORS设置。你也可以在config/sockets.js
定义authorization
设置作为一个自定义的功能以允许或者拒绝初始化的套接字连接基于你的需求。
注意:
- CSWSH保护只在人们使用相同的客户端应用程序来套接字连接多个web应用的场景下才值得关心一下。