大家好!已发布 Rails 3.0.6!
让我们先处理一下重要的问题
早于 3.0.6 的 Rails 3.0.x 版本包含一个 XSS 漏洞。该漏洞通过 auto_link
方法体现。即使输入来自未知来源,auto_link
方法也会自动将输入字符串标记为“html 安全”。
例如
<%= auto_link(params[:content]) %>
如果“content”参数包含恶意 javascript,该脚本将被直接呈现,而不会进行转义。
升级到 Rails 3.0.6,之后传递给 auto_link
的内容将自动为您进行转义。
如果您无法升级 Rails,则应用在此找到 此处 的补丁。之后 auto_link
内容将为您进行转义。
如果您无法升级 Rails 或应用此补丁,则将您调用 auto_link
的内容更改为调用 sanitize,如下所示
<%= sanitize(auto_link(params[:content])) %>
如果您信任输入,则更改为
<%= raw(auto_link(params[:content])) %>
感谢 Torben Schulz 报告此问题!
在两个发行候选版本后,我们非常高兴地宣布发布 Rails 版本 3.0.6!我要感谢所有尝试发行候选版本并报告其反馈的人!我希望在发布最终版本之前,我们能够继续征求公众的反馈。
如需了解特定程序包中的变更,请在 github 上查看每个具体项目中的 CHANGELOG。更棒的是,您还可以查看 比较视图。
值得注意的变更包括
ActionPack 中上述的安全性修复 61ee3449674c591747db95f9b3472c5c3bd9e84d
在 ActiveRecord 中取消弃用 reorder
方法 235a4142aa3fee73faa0f01e267a2b4254cea8ce
在 ActiveRecord 中移植“更便宜的属性读取”86acbf1cc050c8fa8c74a10c735e467fb6fd7df8
更正处理时区相关属性的 before_type_cast
0823bbd757f3654a08d300e27873758da606f06a
在 sqlite3 插入中转义二进制数据 7222786c15eacbd432b2bce9798d3f3459f7e05f
为 mysql 适配器修复架构支持 eb1eac93151c1d45c3ef292d99bfcf74799185ea
此更改列表并非详尽的。它们只是我的一些最喜欢的!对于完整列表,请参阅 CHANGELOG 文件或在 github 中查看 diff。
如果您真想确保您拥有正确的 gem,那么在我推送 gem 之前,以下是我的 shasum!
感谢大家等我度完假才发布此版本!我希望大家喜欢此 Rails 修复程序版本。下次我会尝试不要休太长时间的假!;-)
<3 <3 <3 <3 <3