如何在Rails中修复这个XSS



我不知道它是否算作XSS,但它会导致错误

我有一个image_tag和:alt标签是由用户生成的

然而,使用sanitize/h/html_escape对这一点没有帮助(来自OWASP-这里)

';alert(String.fromCharCode(88,83,83))//';alert(String.fromCharCode(88,83,83))//";
alert(String.fromCharCode(88,83,83))//";alert(String.fromCharCode(88,83,83))//--
></SCRIPT>">'><SCRIPT>alert(String.fromCharCode(88,83,83))</SCRIPT>

:alt => (the string above)

图像输出混乱

是否有办法修复这个XSS?

我使用最新的rails,ruby

从Rails 3.2.8到CVE-2012-3464的修复,Rails转义帮助器转义双引号和单引号。

如果你使用的是正确的版本,你应该很好。

>> ERB::Util.h '';alert(String.fromCharCode(88,83,83))//';alert(String.fromCharCode(88,83,83))//";alert(String.fromCharCode(88,83,83))//";alert(String.fromCharCode(88,83,83))//--></SCRIPT>">'><SCRIPT>alert(String.fromCharCode(88,83,83))</SCRIPT>'
=> "&#39;;alert(String.fromCharCode(88,83,83))//&#39;;alert(String.fromCharCode(88,83,83))//&quot;;alert(String.fromCharCode(88,83,83))//&quot;;alert(String.fromCharCode(88,83,83))//--&gt;&lt;/SCRIPT&gt;&quot;&gt;&#39;&gt;&lt;SCRIPT&gt;alert(String.fromCharCode(88,83,83))&lt;/SCRIPT&gt;"

(注意:上面原始字符串中的反斜杠需要在那里,以便Ruby正确解析包含单引号的字符串)

你可以通过过滤器" ' and>来解决这个问题,这三个字符就足够了

相关内容

  • 没有找到相关文章

最新更新