【问题标题】:How do I fix this XSS warning on rails如何在 Rails 上修复此 XSS 警告
【发布时间】:2014-04-07 15:00:53
【问题描述】:

代码环境警告我们潜在的跨站点脚本问题。 escapeHTML 在这里不够用吗?

link_to(t(".button_text"), main_app.some_path(:id => (h(params[:id]))), :class => "btn")

【问题讨论】:

  • 您可能只想转换为整数? :id => params[:id].to_i
  • id 不是整数,不幸的是它是某种 guid
  • 您使用的是什么版本的导轨?几年前,rails html_escape 方法中有一个 unicode 转义漏洞。从未使用过代码气候,但可以接受吗? groups.google.com/forum/#!topic/rubyonrails-security/…

标签: ruby-on-rails ruby security xss


【解决方案1】:

如何使用从控制器获取的对象并将其传递给路径助手?

def index
  @some_object = SomeObject.find(params[:id])
  [...]
end

然后在你看来使用这个对象来构建路线?

link_to(t(".button_text"), main_app.some_path(@some_object), :class => "btn")

【讨论】:

  • 这似乎是一种非常奇怪的方法。创建一个完整的对象和一个 find 方法,以便将查询字符串中的内容放入下一页的链接中。
猜你喜欢
  • 1970-01-01
  • 2023-01-04
  • 2019-12-07
  • 2021-05-11
  • 1970-01-01
  • 2022-10-31
  • 1970-01-01
  • 2019-08-08
  • 2020-11-28
相关资源
最近更新 更多