Node.js socket.io有xss漏洞吗?如何解决这个问题?

Node.js socket.io有xss漏洞吗?如何解决这个问题?,node.js,socket.io,Node.js,Socket.io,我相信socket.io有一个XSS漏洞,我想知道如何解决这个问题 请参阅我关于哪个有XSS漏洞的帖子 从redis cli执行以下操作时: publish pubsub "<script>alert('Hello world!');</script>" 这足够了还是我遗漏了什么?甚至可以在socket.js中解决这个问题?有一个为XSS提供清理方法的库 有一个为XSS提供消毒方法的库 你认为它有什么“xss漏洞”吗?将我的问题更新到另一个有此漏洞的主题的代码段中。逐字

我相信socket.io有一个XSS漏洞,我想知道如何解决这个问题

请参阅我关于哪个有XSS漏洞的帖子

从redis cli执行以下操作时:

publish pubsub "<script>alert('Hello world!');</script>"

这足够了还是我遗漏了什么?甚至可以在socket.js中解决这个问题?

有一个为XSS提供清理方法的库

有一个为XSS提供消毒方法的库

你认为它有什么“xss漏洞”吗?将我的问题更新到另一个有此漏洞的主题的代码段中。逐字显示不受信任的数据是xss漏洞。对于socket.io来说,这并没有什么特别之处。但是socket.io可以(而且应该逃逸)或者我错了吗?考虑到这个问题已经是Google上“socket.io逃逸”的第二个结果(以及“socket.io xss”的最高结果),我想它不会。为什么要这样做?如果它自动为您转义了内容,那么使用它从可信源获取HTML将变得不必要的困难。如果你想逃避这些东西,你可以自己做。你认为它有什么“xss漏洞”吗?更新了我的问题到另一个有此漏洞的主题的代码段。逐字显示不受信任的数据是xss漏洞。对于socket.io来说,这并没有什么特别之处。但是socket.io可以(而且应该逃逸)或者我错了吗?考虑到这个问题已经是Google上“socket.io逃逸”的第二个结果(以及“socket.io xss”的最高结果),我想它不会。为什么要这样做?如果它自动为您转义了内容,那么使用它从可信源获取HTML将变得不必要的困难。如果你想逃避,那就自己动手吧。
/**
 * Escape the given string of `html`.
 *
 * @param {String} html
 * @return {String}
 * @api private
 */

function sanitize(html){
    return String(html)
        .replace(/&(?!\w+;)/g, '&amp;')
        .replace(/</g, '&lt;')
        .replace(/>/g, '&gt;')
        .replace(/"/g, '&quot;');
}