socket.ioにはXSSの脆弱性がありますか?これを解決する方法は?
質問
socket.ioにはXSSの脆弱性があると思います。これを解決する方法は疑問に思っています。
私の投稿をご覧ください socket.ioでpubsub redis XSSホールがあります。
あなたがするとき、Redis-Cliから:
publish pubsub "<script>alert('Hello world!');</script>"
アラートダイアログが表示されます Hello world!
それはそうです 悪い...
これを解決するために、VisionMediaのJade Libraryから次のスニペットをコピーしましたが、これで十分かどうか疑問に思いますか?
/**
* 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, '"');
}
これで十分ですか、それとも私は何かが足りませんか?問題を解決するためにsocket.jsの内側でさえ?
解決
があります ノードバリダーター XSSの消毒方法を提供するライブラリ。
所属していません StackOverflow