Permalink
Browse files

Clean tag attributes before passing through the escape_once logic.

Addresses CVE-2009-3009
  • Loading branch information...
1 parent 07c6938 commit 9a68c72b4bd9073d6405f69791d9348ab26d8415 @NZKoz NZKoz committed Aug 31, 2009
Showing with 1 addition and 1 deletion.
  1. +1 −1 actionpack/lib/action_view/helpers/tag_helper.rb
@@ -103,7 +103,7 @@ def cdata_section(content)
# escape_once("<< Accept & Checkout")
# # => "<< Accept & Checkout"
def escape_once(html)
- html.to_s.gsub(/[\"><]|&(?!([a-zA-Z]+|(#\d+));)/) { |special| ERB::Util::HTML_ESCAPE[special] }
+ ActiveSupport::Multibyte.clean(html.to_s).gsub(/[\"><]|&(?!([a-zA-Z]+|(#\d+));)/) { |special| ERB::Util::HTML_ESCAPE[special] }
end
private

0 comments on commit 9a68c72

Please sign in to comment.