【问题标题】:How to Prevent Websocket Hack when sending from Server to Client in NodeJS?在 NodeJS 中从服务器发送到客户端时如何防止 Websocket 黑客攻击?
【发布时间】:2014-07-05 23:47:23
【问题描述】:

您好,我目前正在使用 Websockets(Engine.IO) 构建消息传递系统。而且我担心我可能会将自己暴露给客户端黑客。我正在做的是在客户端过滤传入的消息/数据,作为“私人”或“公共”,我的代码如下:

如果用户应该只获取“公开”数据,我该如何防止用户获取“私人”数据?

       var socket = new eio.Socket();       

   socket.onopen = function(){
     console.log("Opened the connection");
   };
   socket.onclose = function(){
   console.log("Connection closed");
   };
   socket.onmessage = function(mess){
    var Message = JSON.parse(mess);
     console.log("a message " + mess );

    if(Message.Type == "Public"){
    console.log("Message is Public" + Message.Message);
    }       

    else if(Message.Type == "Private"){
    console.log("Message is Private " + Message.Message);
    }       

   };       

【问题讨论】:

  • 那么一开始就不要发送私人数据。
  • 因为是单页应用,所以不知道该把代码放在哪里。由于engine.io 只有一个socket.onsend 通道。

标签: node.js websocket


【解决方案1】:

您发送到用户浏览器的任何数据都可以被用户以一种或另一种方式读取。

您可以将加密数据发送到浏览器,如果它不需要被客户端读取或修改并且可以按原样发送。请注意回复攻击。

【讨论】:

    猜你喜欢
    • 2017-09-15
    • 2022-01-12
    • 2022-07-15
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 2015-10-22
    • 2020-08-17
    • 2015-03-05
    相关资源
    最近更新 更多