Ruby on rails 是<;跨度样式=…>;消毒安全吗?
我正在使用富文本编辑器(CKEditor),我有机会让用户创建向其他用户显示的配置文件 当我将CKEditor可以控制的许多属性显示为以下内容时,它们将丢失:Ruby on rails 是<;跨度样式=…>;消毒安全吗?,ruby-on-rails,ruby-on-rails-3,sanitize,html-safe,Ruby On Rails,Ruby On Rails 3,Sanitize,Html Safe,我正在使用富文本编辑器(CKEditor),我有机会让用户创建向其他用户显示的配置文件 当我将CKEditor可以控制的许多属性显示为以下内容时,它们将丢失: <%= sanitize(profile.body) %> 我的问题是:允许解析属性“style”安全吗?这将允许显示文本颜色、大小、背景色、居中、缩进等内容。我只是想确定它不会允许黑客访问我不知道的东西 允许分析属性“style”安全吗 没有 更不用说UI欺骗攻击,比如将虚假登录表单放置在真实表单或其他东西上。ha!非
<%= sanitize(profile.body) %>
我的问题是:允许解析属性“style”安全吗?这将允许显示文本颜色、大小、背景色、居中、缩进等内容。我只是想确定它不会允许黑客访问我不知道的东西
允许分析属性“style”安全吗
没有
更不用说UI欺骗攻击,比如将虚假登录表单放置在真实表单或其他东西上。ha!非常感谢,我有一种感觉:)再看一次,这表明你不能安全地被列入黑名单。如果您没有考虑在CSS中将url规则列入黑名单,那么您现在就有问题了。你甚至不能输出CSS字符串,你真的需要完全解析它,只输出解析过的DOM。但是sanitize()不使用白名单吗?sanitize似乎用
:attributes=>%w(style)
background-image: url(javascript:[code]);
width: expression([code]); /* ie */
behavior: url([link to code]); /* ie */
-moz-binding: url([link to code]); /* ff */