Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
Brakeman
提交
dcc2cc2e
B
Brakeman
项目概览
李少辉-开发者
/
Brakeman
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
B
Brakeman
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
dcc2cc2e
编写于
8月 30, 2012
作者:
J
Justin Collins
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add tests for `content_tag`
上级
a4fc0bbd
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
136 addition
and
3 deletion
+136
-3
test/apps/rails2/app/controllers/home_controller.rb
test/apps/rails2/app/controllers/home_controller.rb
+4
-0
test/apps/rails2/app/views/home/test_content_tag.html.erb
test/apps/rails2/app/views/home/test_content_tag.html.erb
+26
-0
test/apps/rails3/app/controllers/home_controller.rb
test/apps/rails3/app/controllers/home_controller.rb
+4
-0
test/tests/test_rails2.rb
test/tests/test_rails2.rb
+65
-2
test/tests/test_rails3.rb
test/tests/test_rails3.rb
+37
-1
未找到文件。
test/apps/rails2/app/controllers/home_controller.rb
浏览文件 @
dcc2cc2e
...
...
@@ -141,6 +141,10 @@ class HomeController < ApplicationController
@user
=
User
.
find
(
current_user
)
end
def
test_content_tag
@user
=
User
.
find
(
current_user
)
end
private
def
filter_it
...
...
test/apps/rails2/app/views/home/test_content_tag.html.erb
0 → 100644
浏览文件 @
dcc2cc2e
Should not warn
<%=
content_tag
:p
,
h
(
params
[
:something
])
%>
Should warn
<%=
content_tag
:span
,
@user
.
name
%>
Should not warn
<%=
content_tag
:div
,
"Blah!"
,
{
:class
=>
params
[
:class
]
},
true
%>
Should warn
<%=
content_tag
:div
,
"Blah!"
,
{
cookies
[
:weird
]
=>
"bad idea"
}
%>
Should not warn
<%=
content_tag
:h1
,
params
[
:x
]
==
1
?
"totally"
:
"safe"
%>
Should still warn
<%=
content_tag
:div
,
"Blah!"
,
{
@user
.
something
=>
"bad idea"
},
true
%>
Should not warn
<%=
content_tag
:div
,
"Blah!"
,
{
:class
=>
params
[
:class
]
}
%>
Should warn
<%=
content_tag
:div
,
"Blah!"
,
{
:id
=>
@user
.
name
},
false
%>
Should warn, medium confidence
<%=
content_tag
:div
,
x
(
params
[
:maybe_bad
])
%>
test/apps/rails3/app/controllers/home_controller.rb
浏览文件 @
dcc2cc2e
...
...
@@ -92,6 +92,10 @@ class HomeController < ApplicationController
y
+
1
+
2
end
def
test_content_tag
@user
=
User
.
find
(
current_user
)
end
private
def
filter_it
...
...
test/tests/test_rails2.rb
浏览文件 @
dcc2cc2e
...
...
@@ -11,13 +11,13 @@ class Rails2Tests < Test::Unit::TestCase
@expected
||=
{
:controller
=>
1
,
:model
=>
2
,
:template
=>
3
3
,
:template
=>
3
8
,
:warning
=>
31
}
else
@expected
||=
{
:controller
=>
1
,
:model
=>
2
,
:template
=>
3
3
,
:template
=>
3
8
,
:warning
=>
32
}
end
end
...
...
@@ -651,6 +651,69 @@ class Rails2Tests < Test::Unit::TestCase
:file
=>
/test_strip_tags\.html\.erb/
end
def
test_xss_content_tag_body
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
5
,
:message
=>
/^Unescaped\ model\ attribute\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_escaped
assert_no_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
8
,
:message
=>
/^Unescaped\ cookie\ value\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_attribute_name
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
11
,
:message
=>
/^Unescaped\ cookie\ value\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_attribute_name_even_with_escape_set
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
17
,
:message
=>
/^Unescaped\ model\ attribute\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_cross_site_scripting_escaped_by_default
assert_no_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
20
,
:message
=>
/^Unescaped\ parameter\ value\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_unescaped_on_purpose
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
23
,
:message
=>
/^Unescaped\ model\ attribute\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_indirect_body
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
26
,
:message
=>
/^Unescaped\ parameter\ value\ in\ content_tag/
,
:confidence
=>
1
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_cross_site_scripting_single_quotes_CVE_2012_3464
assert_warning
:type
=>
:warning
,
:warning_type
=>
"Cross Site Scripting"
,
...
...
test/tests/test_rails3.rb
浏览文件 @
dcc2cc2e
...
...
@@ -14,7 +14,7 @@ class Rails3Tests < Test::Unit::TestCase
@expected
||=
{
:controller
=>
1
,
:model
=>
5
,
:template
=>
2
3
,
:template
=>
2
7
,
:warning
=>
29
}
end
...
...
@@ -586,6 +586,42 @@ class Rails3Tests < Test::Unit::TestCase
:file
=>
/_form\.html\.erb/
end
def
test_xss_content_tag_raw_content
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
8
,
:message
=>
/^Unescaped\ parameter\ value\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_attribute_name
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
14
,
:message
=>
/^Unescaped\ cookie\ value\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_attribute_name_even_with_escape
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
20
,
:message
=>
/^Unescaped\ model\ attribute\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_xss_content_tag_unescaped_attribute
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
:line
=>
26
,
:message
=>
/^Unescaped\ model\ attribute\ in\ content_tag/
,
:confidence
=>
0
,
:file
=>
/test_content_tag\.html\.erb/
end
def
test_cross_site_scripting_request_parameters
assert_warning
:type
=>
:template
,
:warning_type
=>
"Cross Site Scripting"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录