socket.io有XSS漏洞吗?如何解决这个问题?
题
我相信socket.io有一个XSS漏洞,我想知道如何解决这个问题。
看到我的帖子 pubsub redis with socket.io 具有A/XSS孔。
从Redis-Cli开始时:
publish pubsub "<script>alert('Hello world!');</script>"
您将看到一个警报对话框 Hello world!
那是 坏的...
为了解决这个问题,我复制了VisionMedia的Jade库中的以下片段,想知道这是否足够?
/**
* Escape the given string of `html`.
*
* @param {String} html
* @return {String}
* @api private
*/
function sanitize(html){
return String(html)
.replace(/&(?!\w+;)/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/"/g, '"');
}
这够了还是我错过了什么?也许在插座内部解决问题?
解决方案
有一个 节点validator 为XS提供的消毒方法的库。
不隶属于 StackOverflow