Brakeman Error - 未转义的模型属性

时间:2016-07-30 11:20:38

标签: ruby-on-rails ruby-on-rails-4 brakeman

我收到很多错误如下

Unescaped model attribute near line 20: show_errors(Objective.new(objective_params), :name)

扩展视图

  

这是我的代码

module ApplicationHelper
  # Error Helper for Form
  def show_errors(object, field_name)
    if object.errors.any? && object.errors.messages[field_name][0].present?
      "<label class='text-error'>" + object.errors.messages[field_name][0] + "</label>"
    else
      return ""
    end
  end

end

1 个答案:

答案 0 :(得分:3)

来自Brakeman Cross Site Scripting文档:

  

默认情况下,当参数或cookie值用作方法的参数时,Brakeman也会发出警告,其结果输出未转义为视图。

     

例如:

<%= some_method(cookie[:name]) %>
     

这引发了一个警告:

Unescaped cookie value near line 5: some_method(cookies[:oreo])
     

但是,此警告的置信度将较弱,因为它不会直接输出cookie值。

最后一句话可能很重要。如果您确定您的值已进入视图转义,则可能会忽略/禁用此警告。