aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/template/html-scanner/sanitizer_test.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2011-08-16 15:17:49 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2011-08-16 15:24:48 -0700
commit586a944ddd4d03e66dea1093306147594748037a (patch)
treed98522a5455f5cde0a4e7f852e0569a92657bcd0 /actionpack/test/template/html-scanner/sanitizer_test.rb
parent8a39f411dc3c806422785b1f4d5c7c9d58e4bf85 (diff)
downloadrails-586a944ddd4d03e66dea1093306147594748037a.tar.gz
rails-586a944ddd4d03e66dea1093306147594748037a.tar.bz2
rails-586a944ddd4d03e66dea1093306147594748037a.zip
Tags with invalid names should also be stripped in order to prevent
XSS attacks. Thanks Sascha Depold for the report.
Diffstat (limited to 'actionpack/test/template/html-scanner/sanitizer_test.rb')
-rw-r--r--actionpack/test/template/html-scanner/sanitizer_test.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/actionpack/test/template/html-scanner/sanitizer_test.rb b/actionpack/test/template/html-scanner/sanitizer_test.rb
index 678cb9eeeb..62ad6be680 100644
--- a/actionpack/test/template/html-scanner/sanitizer_test.rb
+++ b/actionpack/test/template/html-scanner/sanitizer_test.rb
@@ -5,6 +5,13 @@ class SanitizerTest < ActionController::TestCase
@sanitizer = nil # used by assert_sanitizer
end
+ def test_strip_tags_with_quote
+ sanitizer = HTML::FullSanitizer.new
+ string = '<" <img src="trollface.gif" onload="alert(1)"> hi'
+
+ assert_equal ' hi', sanitizer.sanitize(string)
+ end
+
def test_strip_tags
sanitizer = HTML::FullSanitizer.new
assert_equal("<<<bad html", sanitizer.sanitize("<<<bad html"))