stratagem 0.2.0 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +29 -0
- data/Manifest +40 -38
- data/Rakefile +3 -3
- data/lib/stratagem.rb +22 -7
- data/lib/stratagem/authentication.rb +2 -1
- data/lib/stratagem/auto_mock/aquifer.rb +88 -15
- data/lib/stratagem/auto_mock/factory.rb +19 -30
- data/lib/stratagem/auto_mock/value_generator.rb +3 -1
- data/lib/stratagem/client.rb +3 -2
- data/lib/stratagem/crawler/authentication.rb +10 -3
- data/lib/stratagem/crawler/form.rb +2 -2
- data/lib/stratagem/crawler/html_utils.rb +12 -1
- data/lib/stratagem/crawler/parameter_resolver.rb +18 -4
- data/lib/stratagem/crawler/route_invoker.rb +58 -16
- data/lib/stratagem/crawler/session.rb +13 -5
- data/lib/stratagem/crawler/site_model.rb +20 -8
- data/lib/stratagem/extensions/object.rb +2 -2
- data/lib/stratagem/extensions/string.rb +2 -2
- data/lib/stratagem/instrumentation.rb +18 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/method_invocation.rb +1 -1
- data/lib/stratagem/instrumentation/models.rb +25 -0
- data/lib/stratagem/instrumentation/models/annotations.rb +114 -0
- data/lib/stratagem/instrumentation/models/association.rb +40 -0
- data/lib/stratagem/instrumentation/models/authentication.rb +7 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/authentication}/authlogic/detect.rb +2 -2
- data/lib/stratagem/instrumentation/models/authentication/authlogic/instrumentation.rb +13 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/authentication}/authlogic/metadata.rb +1 -3
- data/lib/stratagem/instrumentation/models/authentication/devise/detect.rb +11 -0
- data/lib/stratagem/instrumentation/models/authentication/devise/instrumentation.rb +18 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/authentication}/devise/metadata.rb +7 -3
- data/lib/stratagem/{framework_extensions/models/adapters/util/authentication_metadata.rb → instrumentation/models/authentication/metadata.rb} +2 -2
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/authentication}/restful_authentication/detect.rb +2 -4
- data/lib/stratagem/{framework_extensions/models/adapters/restful_authentication/extensions.rb → instrumentation/models/authentication/restful_authentication/instrumentation.rb} +1 -1
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/authentication}/restful_authentication/metadata.rb +2 -2
- data/lib/stratagem/{framework_extensions → instrumentation}/models/detect.rb +1 -1
- data/lib/stratagem/{framework_extensions → instrumentation}/models/metadata.rb +6 -4
- data/lib/stratagem/{framework_extensions → instrumentation}/models/mocking.rb +1 -1
- data/lib/stratagem/instrumentation/models/persistence.rb +9 -0
- data/lib/stratagem/instrumentation/models/persistence/active_record/detect.rb +18 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/persistence}/active_record/extensions.rb +5 -1
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/persistence}/active_record/metadata.rb +25 -9
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/persistence}/active_record/tracing.rb +4 -2
- data/lib/stratagem/instrumentation/models/persistence/common/detect.rb +7 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/persistence}/common/extensions.rb +0 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/persistence}/common/metadata.rb +6 -2
- data/lib/stratagem/instrumentation/models/persistence/common/tracing.rb +4 -0
- data/lib/stratagem/instrumentation/models/support_libraries.rb +7 -0
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/support_libraries}/friendly_id/detect.rb +2 -2
- data/lib/stratagem/{framework_extensions/models/adapters → instrumentation/models/support_libraries}/friendly_id/metadata.rb +2 -2
- data/lib/stratagem/instrumentation/models/support_libraries/state_machine/detect.rb +11 -0
- data/lib/stratagem/instrumentation/models/support_libraries/state_machine/metadata.rb +17 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/models/tracing.rb +2 -2
- data/lib/stratagem/{framework_extensions → instrumentation}/rails.rb +0 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/rails2/action_controller.rb +0 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/rails2/action_mailer.rb +0 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/rails3/parameters.rb +0 -0
- data/lib/stratagem/{framework_extensions → instrumentation}/request_forgery_protection.rb +0 -0
- data/lib/stratagem/model/application.rb +30 -15
- data/lib/stratagem/model/components/controller.rb +2 -2
- data/lib/stratagem/model/components/reference.rb +2 -2
- data/lib/stratagem/model/components/view.rb +1 -1
- data/lib/stratagem/model_builder.rb +19 -8
- data/lib/stratagem/scanner.rb +1 -1
- data/lib/stratagem/site_crawler.rb +4 -2
- data/stratagem.gemspec +7 -7
- data/templates/install/tasks/stratagem.rake +9 -1
- metadata +86 -82
- data/lib/stratagem/framework_extensions.rb +0 -18
- data/lib/stratagem/framework_extensions/models.rb +0 -21
- data/lib/stratagem/framework_extensions/models/adapters/active_record/detect.rb +0 -7
- data/lib/stratagem/framework_extensions/models/adapters/authlogic/extensions.rb +0 -10
- data/lib/stratagem/framework_extensions/models/adapters/authlogic/tracing.rb +0 -4
- data/lib/stratagem/framework_extensions/models/adapters/common/detect.rb +0 -7
- data/lib/stratagem/framework_extensions/models/adapters/common/tracing.rb +0 -4
- data/lib/stratagem/framework_extensions/models/adapters/devise/detect.rb +0 -11
- data/lib/stratagem/framework_extensions/models/adapters/devise/extensions.rb +0 -0
- data/lib/stratagem/framework_extensions/models/adapters/devise/tracing.rb +0 -4
- data/lib/stratagem/framework_extensions/models/adapters/friendly_id/extensions.rb +0 -0
- data/lib/stratagem/framework_extensions/models/adapters/friendly_id/tracing.rb +0 -4
- data/lib/stratagem/framework_extensions/models/adapters/restful_authentication/tracing.rb +0 -4
- data/lib/stratagem/framework_extensions/models/annotations.rb +0 -78
@@ -1,4 +1,4 @@
|
|
1
|
-
module Stratagem::
|
1
|
+
module Stratagem::Instrumentation::Models::Persistence::ActiveRecord
|
2
2
|
module Tracing
|
3
3
|
def self.included(model)
|
4
4
|
model.class_eval do
|
@@ -43,7 +43,9 @@ module Stratagem::ApplicationExtensions::Models::Adapters::ActiveRecord
|
|
43
43
|
|
44
44
|
def create_or_update(*args)
|
45
45
|
alternate_model = nil
|
46
|
-
path,action,line,trace,index = stratagem.controller_trace(/\/active_record\/
|
46
|
+
path,action,line,trace,index = stratagem.controller_trace(/\/active_record\/base\.rb/)
|
47
|
+
path,action,line,trace,index = stratagem.controller_trace(/\/active_record\/transactions\.rb/) unless index
|
48
|
+
|
47
49
|
if (index)
|
48
50
|
model_path,model_action,model_line = find_model_path(trace,index)
|
49
51
|
if (model_path)
|
File without changes
|
@@ -1,4 +1,4 @@
|
|
1
|
-
module Stratagem::
|
1
|
+
module Stratagem::Instrumentation::Models::Persistence::Common
|
2
2
|
|
3
3
|
# prefix method names with to avoid collision
|
4
4
|
class Metadata
|
@@ -7,7 +7,11 @@ module Stratagem::ApplicationExtensions::Models::Adapters::Common
|
|
7
7
|
|
8
8
|
def initialize(model)
|
9
9
|
@model = model
|
10
|
-
|
10
|
+
begin
|
11
|
+
@instance = @model.new unless (@model == ActiveRecord::Base)
|
12
|
+
rescue
|
13
|
+
puts "ERROR: #{@model.name} could not be instantiated: #{$!.message}"
|
14
|
+
end
|
11
15
|
end
|
12
16
|
|
13
17
|
def attribute_names
|
@@ -1,5 +1,5 @@
|
|
1
|
-
module Stratagem::
|
2
|
-
class Detect < Stratagem::
|
1
|
+
module Stratagem::Instrumentation::Models::Persistence::FriendlyId
|
2
|
+
class Detect < Stratagem::Instrumentation::Models::Detect
|
3
3
|
def self.supports?(model)
|
4
4
|
begin
|
5
5
|
model.ancestors.include?(FriendlyId::ActiveRecordAdapter::SluggedModel) ||
|
@@ -1,4 +1,4 @@
|
|
1
|
-
module Stratagem::
|
1
|
+
module Stratagem::Instrumentation::Models::Persistence::FriendlyId
|
2
2
|
|
3
3
|
# prefix method names with to avoid collision
|
4
4
|
class Metadata
|
@@ -9,7 +9,7 @@ module Stratagem::ApplicationExtensions::Models::Adapters::FriendlyId
|
|
9
9
|
def exclude_attributes_for_mocking
|
10
10
|
# open id
|
11
11
|
attrs = @model.stratagem.attribute_names.select {|a|
|
12
|
-
(a =~ /friendly_id/)
|
12
|
+
(a.to_s =~ /friendly_id/)
|
13
13
|
}
|
14
14
|
attrs << :friendly_id_config
|
15
15
|
attrs << :cached_slug
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module Stratagem::Instrumentation::Models::SupportLibraries::StateMachine
|
2
|
+
class Detect < Stratagem::Instrumentation::Models::Detect
|
3
|
+
def self.supports?(model)
|
4
|
+
begin
|
5
|
+
model.ancestors.include?(StateMachine::InstanceMethods)
|
6
|
+
rescue
|
7
|
+
false
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Stratagem::Instrumentation::Models::SupportLibraries::StateMachine
|
2
|
+
|
3
|
+
# prefix method names with to avoid collision
|
4
|
+
class Metadata
|
5
|
+
def initialize(model)
|
6
|
+
@model = model
|
7
|
+
end
|
8
|
+
|
9
|
+
def exclude_attributes_for_mocking
|
10
|
+
attrs = @model.stratagem.attribute_names.select {|a|
|
11
|
+
(a.to_s =~ /^state$/) || (a.to_s =~ /^state_/)
|
12
|
+
}
|
13
|
+
attrs
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
module Stratagem::
|
1
|
+
module Stratagem::Instrumentation::Models
|
2
2
|
module Tracing
|
3
3
|
|
4
4
|
@@invocations_audit = []
|
@@ -51,7 +51,7 @@ module Stratagem::ApplicationExtensions::Models
|
|
51
51
|
def invocation(method, args, enumeration, type, object=nil, alternate_model=nil)
|
52
52
|
path,action,line,trace,index = controller_trace
|
53
53
|
args = args.first if args && (args.size == 1) && (args.first.kind_of?(Array))
|
54
|
-
add_invocation enumeration, Stratagem::
|
54
|
+
add_invocation enumeration, Stratagem::Instrumentation::MethodInvocation.new(method, path, action, line, object, alternate_model || model, caller, args, type) if (path)
|
55
55
|
end
|
56
56
|
|
57
57
|
def controller_trace(regex = /_controller\.rb/)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -31,20 +31,35 @@ module Stratagem::Model
|
|
31
31
|
|
32
32
|
def export
|
33
33
|
puts "exporting site model"
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
34
|
+
puts "references:"
|
35
|
+
references = []
|
36
|
+
begin
|
37
|
+
references = Stratagem::Instrumentation::Models::Tracing.invocations_audit.uniq.map {|ia| ia.to_reference.export }.uniq
|
38
|
+
rescue
|
39
|
+
puts $!.message
|
40
|
+
puts $!.backtrace
|
41
|
+
end
|
42
|
+
puts "exporting hash"
|
43
|
+
begin
|
44
|
+
# references = @controllers.map {|c| c.references }.flatten.map {|r| r.export }.uniq
|
45
|
+
h = {
|
46
|
+
:rails_version => rails_version,
|
47
|
+
:rails_environment => Rails.env,
|
48
|
+
:rails_root => Rails.root.to_s,
|
49
|
+
:models => @models.export,
|
50
|
+
:controllers => @controllers.export,
|
51
|
+
:routes => @routes.export,
|
52
|
+
:views => @views.export,
|
53
|
+
:gems => @gems.export,
|
54
|
+
:plugins => @plugins.export,
|
55
|
+
:site_model => crawler ? crawler.export : nil,
|
56
|
+
:references => references
|
57
|
+
}
|
58
|
+
rescue
|
59
|
+
puts $!.message
|
60
|
+
puts $!.backtrace
|
61
|
+
end
|
62
|
+
puts "hash generated"
|
48
63
|
puts h.to_json
|
49
64
|
h
|
50
65
|
end
|
@@ -152,7 +167,7 @@ module Stratagem::Model
|
|
152
167
|
unless path.nil?
|
153
168
|
# path = path.gsub('http://www.example.com', '')
|
154
169
|
route = self.find {|r| r.responds_to?(path, method) }
|
155
|
-
puts "route: #{route.path}"
|
170
|
+
puts "route: #{route.path}" if route
|
156
171
|
route
|
157
172
|
else
|
158
173
|
nil
|
@@ -13,9 +13,9 @@ module Stratagem::Model::Component
|
|
13
13
|
|
14
14
|
def model_invocations(type=nil)
|
15
15
|
puts "MODEL INVOCATIONS FOR: #{controller.klass.name} / #{name}"
|
16
|
-
puts "\t#{Stratagem::
|
16
|
+
puts "\t#{Stratagem::Instrumentation::Models::Tracing.invocations_audit.size} total invocations"
|
17
17
|
invocations = []
|
18
|
-
Stratagem::
|
18
|
+
Stratagem::Instrumentation::Models::Tracing.invocations_audit.each {|invocation|
|
19
19
|
if ((invocation.controller_path == controller.path) && (invocation.controller_action.to_s == self.name.to_s))
|
20
20
|
invocations << invocation unless invocations.include?(invocation)
|
21
21
|
end
|
@@ -24,8 +24,8 @@ module Stratagem::Model::Component
|
|
24
24
|
h = {
|
25
25
|
:external_id => self.object_id,
|
26
26
|
:reference_type => reference_type,
|
27
|
-
:from_component_external_id => from_component.object_id,
|
28
|
-
:to_component_external_id => to_component.object_id,
|
27
|
+
:from_component_external_id => from_component ? from_component.object_id : nil,
|
28
|
+
:to_component_external_id => to_component ? to_component.object_id : nil,
|
29
29
|
:line_number => line_number,
|
30
30
|
:request_method => request_method,
|
31
31
|
:function => function,
|
@@ -92,20 +92,31 @@ module Stratagem
|
|
92
92
|
ActionController::Routing::Routes.routes.each {|route|
|
93
93
|
route_container = Stratagem::Model::Component::Route.new(route)
|
94
94
|
@model.routes << route_container
|
95
|
-
p route.requirements
|
96
95
|
|
97
96
|
begin
|
98
|
-
puts "loading controller - #{route_container.controller_name}"
|
99
97
|
controller_class = route_container.controller_name.constantize
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
98
|
+
|
99
|
+
# find or create the controller
|
100
|
+
controller_container = @model.controllers.find {|c| c.klass == controller_class } || begin
|
101
|
+
puts "loading controller - #{route_container.controller_name}"
|
102
|
+
|
103
|
+
# load the parse tree
|
104
104
|
parse_tree = nil
|
105
|
+
begin
|
106
|
+
filename = File.join(root, "#{route_container.controller_path}_controller.rb")
|
107
|
+
parse_tree = RedParse.new(File.read(filename)).parse if (File.exists?(filename))
|
108
|
+
rescue
|
109
|
+
puts "ERROR PARSING CONTROLLER: #{$!.message}"
|
110
|
+
end
|
111
|
+
|
112
|
+
# store the new controller in the model
|
113
|
+
controller_container = Stratagem::Model::Component::Controller.new(filename, parse_tree, controller_class)
|
114
|
+
@model.controllers << controller_container
|
115
|
+
controller_container
|
105
116
|
end
|
106
|
-
|
117
|
+
|
118
|
+
# configure the route
|
107
119
|
configure_route(route_container, controller_container)
|
108
|
-
@model.controllers << controller_container
|
109
120
|
rescue
|
110
121
|
log "\tinvalid route #{route.to_s} - #{$!.message}"
|
111
122
|
@model.routes.invalid << Stratagem::Model::Component::Route.new(route)
|
data/lib/stratagem/scanner.rb
CHANGED
@@ -8,7 +8,7 @@ module Stratagem
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def run
|
11
|
-
# Object.
|
11
|
+
# Object.sg_subclasses_of(Stratagem::Scan::Checks::Base).each {|check|
|
12
12
|
# log "running security check: #{check}"
|
13
13
|
# puts "running #{check}"
|
14
14
|
# check = check.new(@model)
|
@@ -10,7 +10,6 @@ module Stratagem
|
|
10
10
|
crawler_session(@application_model) do
|
11
11
|
log "crawling site"
|
12
12
|
page_set(:unauthenticated) do |pages|
|
13
|
-
puts "SET: #{pages.object_id}"
|
14
13
|
crawl
|
15
14
|
print
|
16
15
|
end
|
@@ -20,7 +19,7 @@ module Stratagem
|
|
20
19
|
authenticate(user) do
|
21
20
|
puts "authenticated with #{user.stratagem.mock_attributes.inspect}"
|
22
21
|
crawl
|
23
|
-
crawl(:put)
|
22
|
+
crawl([:put, :post])
|
24
23
|
end
|
25
24
|
end
|
26
25
|
end
|
@@ -28,6 +27,9 @@ module Stratagem
|
|
28
27
|
end
|
29
28
|
|
30
29
|
self
|
30
|
+
rescue Exception
|
31
|
+
puts $!
|
32
|
+
|
31
33
|
end
|
32
34
|
|
33
35
|
def export
|
data/stratagem.gemspec
CHANGED
@@ -2,23 +2,23 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{stratagem}
|
5
|
-
s.version = "0.2.
|
5
|
+
s.version = "0.2.2"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Charles Grimes"]
|
9
|
-
s.date = %q{2010-10-
|
9
|
+
s.date = %q{2010-10-13}
|
10
10
|
s.default_executable = %q{stratagem}
|
11
|
-
s.description = %q{Intuitive security analysis
|
11
|
+
s.description = %q{Intuitive security analysis for your Rails applications}
|
12
12
|
s.email = %q{cj@stratagemapp.com}
|
13
13
|
s.executables = ["stratagem"]
|
14
|
-
s.extra_rdoc_files = ["bin/stratagem", "lib/bootstrap.rb", "lib/generators/stratagem/install/USAGE", "lib/generators/stratagem/install/install_base.rb", "lib/generators/stratagem/install/install_generator.rb", "lib/stratagem.rb", "lib/stratagem/authentication.rb", "lib/stratagem/auto_mock.rb", "lib/stratagem/auto_mock/aquifer.rb", "lib/stratagem/auto_mock/factory.rb", "lib/stratagem/auto_mock/value_generator.rb", "lib/stratagem/blocker.rb", "lib/stratagem/client.rb", "lib/stratagem/command.rb", "lib/stratagem/commands.rb", "lib/stratagem/commands/analyze.rb", "lib/stratagem/commands/base.rb", "lib/stratagem/commands/devel_mock.rb", "lib/stratagem/crawler.rb", "lib/stratagem/crawler/authentication.rb", "lib/stratagem/crawler/form.rb", "lib/stratagem/crawler/html_utils.rb", "lib/stratagem/crawler/parameter_resolver.rb", "lib/stratagem/crawler/route_invoker.rb", "lib/stratagem/crawler/session.rb", "lib/stratagem/crawler/site_model.rb", "lib/stratagem/crawler/trace_utils.rb", "lib/stratagem/extensions.rb", "lib/stratagem/extensions/class.rb", "lib/stratagem/extensions/hash.rb", "lib/stratagem/extensions/module.rb", "lib/stratagem/extensions/net.rb", "lib/stratagem/extensions/object.rb", "lib/stratagem/extensions/red_parse.rb", "lib/stratagem/extensions/string.rb", "lib/stratagem/extensions/trace_compression.rb", "lib/stratagem/
|
15
|
-
s.files = ["Manifest", "Rakefile", "bin/stratagem", "generators/stratagem/stratagem_generator.rb", "init.rb", "lib/bootstrap.rb", "lib/generators/stratagem/install/USAGE", "lib/generators/stratagem/install/install_base.rb", "lib/generators/stratagem/install/install_generator.rb", "lib/stratagem.rb", "lib/stratagem/authentication.rb", "lib/stratagem/auto_mock.rb", "lib/stratagem/auto_mock/aquifer.rb", "lib/stratagem/auto_mock/factory.rb", "lib/stratagem/auto_mock/value_generator.rb", "lib/stratagem/blocker.rb", "lib/stratagem/client.rb", "lib/stratagem/command.rb", "lib/stratagem/commands.rb", "lib/stratagem/commands/analyze.rb", "lib/stratagem/commands/base.rb", "lib/stratagem/commands/devel_mock.rb", "lib/stratagem/crawler.rb", "lib/stratagem/crawler/authentication.rb", "lib/stratagem/crawler/form.rb", "lib/stratagem/crawler/html_utils.rb", "lib/stratagem/crawler/parameter_resolver.rb", "lib/stratagem/crawler/route_invoker.rb", "lib/stratagem/crawler/session.rb", "lib/stratagem/crawler/site_model.rb", "lib/stratagem/crawler/trace_utils.rb", "lib/stratagem/extensions.rb", "lib/stratagem/extensions/class.rb", "lib/stratagem/extensions/hash.rb", "lib/stratagem/extensions/module.rb", "lib/stratagem/extensions/net.rb", "lib/stratagem/extensions/object.rb", "lib/stratagem/extensions/red_parse.rb", "lib/stratagem/extensions/string.rb", "lib/stratagem/extensions/trace_compression.rb", "lib/stratagem/
|
16
|
-
s.homepage = %q{http://
|
14
|
+
s.extra_rdoc_files = ["LICENSE", "bin/stratagem", "lib/bootstrap.rb", "lib/generators/stratagem/install/USAGE", "lib/generators/stratagem/install/install_base.rb", "lib/generators/stratagem/install/install_generator.rb", "lib/stratagem.rb", "lib/stratagem/authentication.rb", "lib/stratagem/auto_mock.rb", "lib/stratagem/auto_mock/aquifer.rb", "lib/stratagem/auto_mock/factory.rb", "lib/stratagem/auto_mock/value_generator.rb", "lib/stratagem/blocker.rb", "lib/stratagem/client.rb", "lib/stratagem/command.rb", "lib/stratagem/commands.rb", "lib/stratagem/commands/analyze.rb", "lib/stratagem/commands/base.rb", "lib/stratagem/commands/devel_mock.rb", "lib/stratagem/crawler.rb", "lib/stratagem/crawler/authentication.rb", "lib/stratagem/crawler/form.rb", "lib/stratagem/crawler/html_utils.rb", "lib/stratagem/crawler/parameter_resolver.rb", "lib/stratagem/crawler/route_invoker.rb", "lib/stratagem/crawler/session.rb", "lib/stratagem/crawler/site_model.rb", "lib/stratagem/crawler/trace_utils.rb", "lib/stratagem/extensions.rb", "lib/stratagem/extensions/class.rb", "lib/stratagem/extensions/hash.rb", "lib/stratagem/extensions/module.rb", "lib/stratagem/extensions/net.rb", "lib/stratagem/extensions/object.rb", "lib/stratagem/extensions/red_parse.rb", "lib/stratagem/extensions/string.rb", "lib/stratagem/extensions/trace_compression.rb", "lib/stratagem/instrumentation.rb", "lib/stratagem/instrumentation/method_invocation.rb", "lib/stratagem/instrumentation/models.rb", "lib/stratagem/instrumentation/models/annotations.rb", "lib/stratagem/instrumentation/models/association.rb", "lib/stratagem/instrumentation/models/authentication.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/detect.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/metadata.rb", "lib/stratagem/instrumentation/models/authentication/devise/detect.rb", "lib/stratagem/instrumentation/models/authentication/devise/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/devise/metadata.rb", "lib/stratagem/instrumentation/models/authentication/metadata.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/detect.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/metadata.rb", "lib/stratagem/instrumentation/models/detect.rb", "lib/stratagem/instrumentation/models/metadata.rb", "lib/stratagem/instrumentation/models/mocking.rb", "lib/stratagem/instrumentation/models/persistence.rb", "lib/stratagem/instrumentation/models/persistence/active_record/detect.rb", "lib/stratagem/instrumentation/models/persistence/active_record/extensions.rb", "lib/stratagem/instrumentation/models/persistence/active_record/metadata.rb", "lib/stratagem/instrumentation/models/persistence/active_record/tracing.rb", "lib/stratagem/instrumentation/models/persistence/common/detect.rb", "lib/stratagem/instrumentation/models/persistence/common/extensions.rb", "lib/stratagem/instrumentation/models/persistence/common/metadata.rb", "lib/stratagem/instrumentation/models/persistence/common/tracing.rb", "lib/stratagem/instrumentation/models/support_libraries.rb", "lib/stratagem/instrumentation/models/support_libraries/friendly_id/detect.rb", "lib/stratagem/instrumentation/models/support_libraries/friendly_id/metadata.rb", "lib/stratagem/instrumentation/models/support_libraries/state_machine/detect.rb", "lib/stratagem/instrumentation/models/support_libraries/state_machine/metadata.rb", "lib/stratagem/instrumentation/models/tracing.rb", "lib/stratagem/instrumentation/rails.rb", "lib/stratagem/instrumentation/rails2/action_controller.rb", "lib/stratagem/instrumentation/rails2/action_mailer.rb", "lib/stratagem/instrumentation/rails3/parameters.rb", "lib/stratagem/instrumentation/request_forgery_protection.rb", "lib/stratagem/interface/browser.rb", "lib/stratagem/interface/public/images/backgrounds/content.png", "lib/stratagem/interface/public/images/backgrounds/shadow.png", "lib/stratagem/interface/public/javascripts/jquery-1.4.2.min.js", "lib/stratagem/interface/public/javascripts/stratagem.js", "lib/stratagem/interface/public/javascripts/stratagem_debug.js", "lib/stratagem/interface/public/stylesheets/960.css", "lib/stratagem/interface/public/stylesheets/reset.css", "lib/stratagem/interface/public/stylesheets/stratagem.css", "lib/stratagem/interface/public/stylesheets/stratagem_debug.css", "lib/stratagem/interface/views/debug.haml", "lib/stratagem/interface/views/index.haml", "lib/stratagem/labs/auto_mock.rb", "lib/stratagem/labs/crawler.rb", "lib/stratagem/logger.rb", "lib/stratagem/model.rb", "lib/stratagem/model/application.rb", "lib/stratagem/model/components/base.rb", "lib/stratagem/model/components/controller.rb", "lib/stratagem/model/components/model.rb", "lib/stratagem/model/components/reference.rb", "lib/stratagem/model/components/route.rb", "lib/stratagem/model/components/static_file.rb", "lib/stratagem/model/components/view.rb", "lib/stratagem/model/parse_util.rb", "lib/stratagem/model_builder.rb", "lib/stratagem/recipes/deploy.rb", "lib/stratagem/scan.rb", "lib/stratagem/scan/checks/capistrano/secure_deploy.rb", "lib/stratagem/scan/checks/email_address.rb", "lib/stratagem/scan/checks/error_pages.rb", "lib/stratagem/scan/result.rb", "lib/stratagem/scanner.rb", "lib/stratagem/site_crawler.rb", "lib/stratagem/snapshot.rb"]
|
15
|
+
s.files = ["LICENSE", "Manifest", "Rakefile", "bin/stratagem", "generators/stratagem/stratagem_generator.rb", "init.rb", "lib/bootstrap.rb", "lib/generators/stratagem/install/USAGE", "lib/generators/stratagem/install/install_base.rb", "lib/generators/stratagem/install/install_generator.rb", "lib/stratagem.rb", "lib/stratagem/authentication.rb", "lib/stratagem/auto_mock.rb", "lib/stratagem/auto_mock/aquifer.rb", "lib/stratagem/auto_mock/factory.rb", "lib/stratagem/auto_mock/value_generator.rb", "lib/stratagem/blocker.rb", "lib/stratagem/client.rb", "lib/stratagem/command.rb", "lib/stratagem/commands.rb", "lib/stratagem/commands/analyze.rb", "lib/stratagem/commands/base.rb", "lib/stratagem/commands/devel_mock.rb", "lib/stratagem/crawler.rb", "lib/stratagem/crawler/authentication.rb", "lib/stratagem/crawler/form.rb", "lib/stratagem/crawler/html_utils.rb", "lib/stratagem/crawler/parameter_resolver.rb", "lib/stratagem/crawler/route_invoker.rb", "lib/stratagem/crawler/session.rb", "lib/stratagem/crawler/site_model.rb", "lib/stratagem/crawler/trace_utils.rb", "lib/stratagem/extensions.rb", "lib/stratagem/extensions/class.rb", "lib/stratagem/extensions/hash.rb", "lib/stratagem/extensions/module.rb", "lib/stratagem/extensions/net.rb", "lib/stratagem/extensions/object.rb", "lib/stratagem/extensions/red_parse.rb", "lib/stratagem/extensions/string.rb", "lib/stratagem/extensions/trace_compression.rb", "lib/stratagem/instrumentation.rb", "lib/stratagem/instrumentation/method_invocation.rb", "lib/stratagem/instrumentation/models.rb", "lib/stratagem/instrumentation/models/annotations.rb", "lib/stratagem/instrumentation/models/association.rb", "lib/stratagem/instrumentation/models/authentication.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/detect.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/authlogic/metadata.rb", "lib/stratagem/instrumentation/models/authentication/devise/detect.rb", "lib/stratagem/instrumentation/models/authentication/devise/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/devise/metadata.rb", "lib/stratagem/instrumentation/models/authentication/metadata.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/detect.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/instrumentation.rb", "lib/stratagem/instrumentation/models/authentication/restful_authentication/metadata.rb", "lib/stratagem/instrumentation/models/detect.rb", "lib/stratagem/instrumentation/models/metadata.rb", "lib/stratagem/instrumentation/models/mocking.rb", "lib/stratagem/instrumentation/models/persistence.rb", "lib/stratagem/instrumentation/models/persistence/active_record/detect.rb", "lib/stratagem/instrumentation/models/persistence/active_record/extensions.rb", "lib/stratagem/instrumentation/models/persistence/active_record/metadata.rb", "lib/stratagem/instrumentation/models/persistence/active_record/tracing.rb", "lib/stratagem/instrumentation/models/persistence/common/detect.rb", "lib/stratagem/instrumentation/models/persistence/common/extensions.rb", "lib/stratagem/instrumentation/models/persistence/common/metadata.rb", "lib/stratagem/instrumentation/models/persistence/common/tracing.rb", "lib/stratagem/instrumentation/models/support_libraries.rb", "lib/stratagem/instrumentation/models/support_libraries/friendly_id/detect.rb", "lib/stratagem/instrumentation/models/support_libraries/friendly_id/metadata.rb", "lib/stratagem/instrumentation/models/support_libraries/state_machine/detect.rb", "lib/stratagem/instrumentation/models/support_libraries/state_machine/metadata.rb", "lib/stratagem/instrumentation/models/tracing.rb", "lib/stratagem/instrumentation/rails.rb", "lib/stratagem/instrumentation/rails2/action_controller.rb", "lib/stratagem/instrumentation/rails2/action_mailer.rb", "lib/stratagem/instrumentation/rails3/parameters.rb", "lib/stratagem/instrumentation/request_forgery_protection.rb", "lib/stratagem/interface/browser.rb", "lib/stratagem/interface/public/images/backgrounds/content.png", "lib/stratagem/interface/public/images/backgrounds/shadow.png", "lib/stratagem/interface/public/javascripts/jquery-1.4.2.min.js", "lib/stratagem/interface/public/javascripts/stratagem.js", "lib/stratagem/interface/public/javascripts/stratagem_debug.js", "lib/stratagem/interface/public/stylesheets/960.css", "lib/stratagem/interface/public/stylesheets/reset.css", "lib/stratagem/interface/public/stylesheets/stratagem.css", "lib/stratagem/interface/public/stylesheets/stratagem_debug.css", "lib/stratagem/interface/views/debug.haml", "lib/stratagem/interface/views/index.haml", "lib/stratagem/labs/auto_mock.rb", "lib/stratagem/labs/crawler.rb", "lib/stratagem/logger.rb", "lib/stratagem/model.rb", "lib/stratagem/model/application.rb", "lib/stratagem/model/components/base.rb", "lib/stratagem/model/components/controller.rb", "lib/stratagem/model/components/model.rb", "lib/stratagem/model/components/reference.rb", "lib/stratagem/model/components/route.rb", "lib/stratagem/model/components/static_file.rb", "lib/stratagem/model/components/view.rb", "lib/stratagem/model/parse_util.rb", "lib/stratagem/model_builder.rb", "lib/stratagem/recipes/deploy.rb", "lib/stratagem/scan.rb", "lib/stratagem/scan/checks/capistrano/secure_deploy.rb", "lib/stratagem/scan/checks/email_address.rb", "lib/stratagem/scan/checks/error_pages.rb", "lib/stratagem/scan/result.rb", "lib/stratagem/scanner.rb", "lib/stratagem/site_crawler.rb", "lib/stratagem/snapshot.rb", "templates/install/environments/stratagem.rb.erb", "templates/install/tasks/stratagem.rake", "stratagem.gemspec"]
|
16
|
+
s.homepage = %q{http://www.stratagemapp.com}
|
17
17
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Stratagem"]
|
18
18
|
s.require_paths = ["lib"]
|
19
19
|
s.rubyforge_project = %q{stratagem}
|
20
20
|
s.rubygems_version = %q{1.3.7}
|
21
|
-
s.summary = %q{Intuitive security analysis
|
21
|
+
s.summary = %q{Intuitive security analysis for your Rails applications}
|
22
22
|
|
23
23
|
if s.respond_to? :specification_version then
|
24
24
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
@@ -1,6 +1,6 @@
|
|
1
1
|
|
2
2
|
namespace :stratagem do
|
3
|
-
task :
|
3
|
+
task :setup do
|
4
4
|
# Force the StrataGem environment
|
5
5
|
if (Rails.version =~ /^3/)
|
6
6
|
Rails.env = 'stratagem'
|
@@ -11,8 +11,16 @@ namespace :stratagem do
|
|
11
11
|
require './config/environment'
|
12
12
|
|
13
13
|
raise "Unable to set the Rails environment" unless Rails.env == 'stratagem'
|
14
|
+
end
|
14
15
|
|
16
|
+
task :analyze => :setup do
|
15
17
|
Stratagem.init
|
16
18
|
Stratagem::Command.run('analyze')
|
17
19
|
end
|
20
|
+
|
21
|
+
task :console => :setup do
|
22
|
+
Stratagem.load_dependencies
|
23
|
+
puts "loading console"
|
24
|
+
require 'commands/console'
|
25
|
+
end
|
18
26
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 2
|
8
|
-
-
|
9
|
-
version: 0.2.
|
8
|
+
- 2
|
9
|
+
version: 0.2.2
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Charles Grimes
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-10-
|
17
|
+
date: 2010-10-13 00:00:00 -06:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -165,13 +165,14 @@ dependencies:
|
|
165
165
|
version: 0.4.3
|
166
166
|
type: :development
|
167
167
|
version_requirements: *id010
|
168
|
-
description: Intuitive security analysis
|
168
|
+
description: Intuitive security analysis for your Rails applications
|
169
169
|
email: cj@stratagemapp.com
|
170
170
|
executables:
|
171
171
|
- stratagem
|
172
172
|
extensions: []
|
173
173
|
|
174
174
|
extra_rdoc_files:
|
175
|
+
- LICENSE
|
175
176
|
- bin/stratagem
|
176
177
|
- lib/bootstrap.rb
|
177
178
|
- lib/generators/stratagem/install/USAGE
|
@@ -208,44 +209,45 @@ extra_rdoc_files:
|
|
208
209
|
- lib/stratagem/extensions/red_parse.rb
|
209
210
|
- lib/stratagem/extensions/string.rb
|
210
211
|
- lib/stratagem/extensions/trace_compression.rb
|
211
|
-
- lib/stratagem/
|
212
|
-
- lib/stratagem/
|
213
|
-
- lib/stratagem/
|
214
|
-
- lib/stratagem/
|
215
|
-
- lib/stratagem/
|
216
|
-
- lib/stratagem/
|
217
|
-
- lib/stratagem/
|
218
|
-
- lib/stratagem/
|
219
|
-
- lib/stratagem/
|
220
|
-
- lib/stratagem/
|
221
|
-
- lib/stratagem/
|
222
|
-
- lib/stratagem/
|
223
|
-
- lib/stratagem/
|
224
|
-
- lib/stratagem/
|
225
|
-
- lib/stratagem/
|
226
|
-
- lib/stratagem/
|
227
|
-
- lib/stratagem/
|
228
|
-
- lib/stratagem/
|
229
|
-
- lib/stratagem/
|
230
|
-
- lib/stratagem/
|
231
|
-
- lib/stratagem/
|
232
|
-
- lib/stratagem/
|
233
|
-
- lib/stratagem/
|
234
|
-
- lib/stratagem/
|
235
|
-
- lib/stratagem/
|
236
|
-
- lib/stratagem/
|
237
|
-
- lib/stratagem/
|
238
|
-
- lib/stratagem/
|
239
|
-
- lib/stratagem/
|
240
|
-
- lib/stratagem/
|
241
|
-
- lib/stratagem/
|
242
|
-
- lib/stratagem/
|
243
|
-
- lib/stratagem/
|
244
|
-
- lib/stratagem/
|
245
|
-
- lib/stratagem/
|
246
|
-
- lib/stratagem/
|
247
|
-
- lib/stratagem/
|
248
|
-
- lib/stratagem/
|
212
|
+
- lib/stratagem/instrumentation.rb
|
213
|
+
- lib/stratagem/instrumentation/method_invocation.rb
|
214
|
+
- lib/stratagem/instrumentation/models.rb
|
215
|
+
- lib/stratagem/instrumentation/models/annotations.rb
|
216
|
+
- lib/stratagem/instrumentation/models/association.rb
|
217
|
+
- lib/stratagem/instrumentation/models/authentication.rb
|
218
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/detect.rb
|
219
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/instrumentation.rb
|
220
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/metadata.rb
|
221
|
+
- lib/stratagem/instrumentation/models/authentication/devise/detect.rb
|
222
|
+
- lib/stratagem/instrumentation/models/authentication/devise/instrumentation.rb
|
223
|
+
- lib/stratagem/instrumentation/models/authentication/devise/metadata.rb
|
224
|
+
- lib/stratagem/instrumentation/models/authentication/metadata.rb
|
225
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/detect.rb
|
226
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/instrumentation.rb
|
227
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/metadata.rb
|
228
|
+
- lib/stratagem/instrumentation/models/detect.rb
|
229
|
+
- lib/stratagem/instrumentation/models/metadata.rb
|
230
|
+
- lib/stratagem/instrumentation/models/mocking.rb
|
231
|
+
- lib/stratagem/instrumentation/models/persistence.rb
|
232
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/detect.rb
|
233
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/extensions.rb
|
234
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/metadata.rb
|
235
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/tracing.rb
|
236
|
+
- lib/stratagem/instrumentation/models/persistence/common/detect.rb
|
237
|
+
- lib/stratagem/instrumentation/models/persistence/common/extensions.rb
|
238
|
+
- lib/stratagem/instrumentation/models/persistence/common/metadata.rb
|
239
|
+
- lib/stratagem/instrumentation/models/persistence/common/tracing.rb
|
240
|
+
- lib/stratagem/instrumentation/models/support_libraries.rb
|
241
|
+
- lib/stratagem/instrumentation/models/support_libraries/friendly_id/detect.rb
|
242
|
+
- lib/stratagem/instrumentation/models/support_libraries/friendly_id/metadata.rb
|
243
|
+
- lib/stratagem/instrumentation/models/support_libraries/state_machine/detect.rb
|
244
|
+
- lib/stratagem/instrumentation/models/support_libraries/state_machine/metadata.rb
|
245
|
+
- lib/stratagem/instrumentation/models/tracing.rb
|
246
|
+
- lib/stratagem/instrumentation/rails.rb
|
247
|
+
- lib/stratagem/instrumentation/rails2/action_controller.rb
|
248
|
+
- lib/stratagem/instrumentation/rails2/action_mailer.rb
|
249
|
+
- lib/stratagem/instrumentation/rails3/parameters.rb
|
250
|
+
- lib/stratagem/instrumentation/request_forgery_protection.rb
|
249
251
|
- lib/stratagem/interface/browser.rb
|
250
252
|
- lib/stratagem/interface/public/images/backgrounds/content.png
|
251
253
|
- lib/stratagem/interface/public/images/backgrounds/shadow.png
|
@@ -282,6 +284,7 @@ extra_rdoc_files:
|
|
282
284
|
- lib/stratagem/site_crawler.rb
|
283
285
|
- lib/stratagem/snapshot.rb
|
284
286
|
files:
|
287
|
+
- LICENSE
|
285
288
|
- Manifest
|
286
289
|
- Rakefile
|
287
290
|
- bin/stratagem
|
@@ -322,44 +325,45 @@ files:
|
|
322
325
|
- lib/stratagem/extensions/red_parse.rb
|
323
326
|
- lib/stratagem/extensions/string.rb
|
324
327
|
- lib/stratagem/extensions/trace_compression.rb
|
325
|
-
- lib/stratagem/
|
326
|
-
- lib/stratagem/
|
327
|
-
- lib/stratagem/
|
328
|
-
- lib/stratagem/
|
329
|
-
- lib/stratagem/
|
330
|
-
- lib/stratagem/
|
331
|
-
- lib/stratagem/
|
332
|
-
- lib/stratagem/
|
333
|
-
- lib/stratagem/
|
334
|
-
- lib/stratagem/
|
335
|
-
- lib/stratagem/
|
336
|
-
- lib/stratagem/
|
337
|
-
- lib/stratagem/
|
338
|
-
- lib/stratagem/
|
339
|
-
- lib/stratagem/
|
340
|
-
- lib/stratagem/
|
341
|
-
- lib/stratagem/
|
342
|
-
- lib/stratagem/
|
343
|
-
- lib/stratagem/
|
344
|
-
- lib/stratagem/
|
345
|
-
- lib/stratagem/
|
346
|
-
- lib/stratagem/
|
347
|
-
- lib/stratagem/
|
348
|
-
- lib/stratagem/
|
349
|
-
- lib/stratagem/
|
350
|
-
- lib/stratagem/
|
351
|
-
- lib/stratagem/
|
352
|
-
- lib/stratagem/
|
353
|
-
- lib/stratagem/
|
354
|
-
- lib/stratagem/
|
355
|
-
- lib/stratagem/
|
356
|
-
- lib/stratagem/
|
357
|
-
- lib/stratagem/
|
358
|
-
- lib/stratagem/
|
359
|
-
- lib/stratagem/
|
360
|
-
- lib/stratagem/
|
361
|
-
- lib/stratagem/
|
362
|
-
- lib/stratagem/
|
328
|
+
- lib/stratagem/instrumentation.rb
|
329
|
+
- lib/stratagem/instrumentation/method_invocation.rb
|
330
|
+
- lib/stratagem/instrumentation/models.rb
|
331
|
+
- lib/stratagem/instrumentation/models/annotations.rb
|
332
|
+
- lib/stratagem/instrumentation/models/association.rb
|
333
|
+
- lib/stratagem/instrumentation/models/authentication.rb
|
334
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/detect.rb
|
335
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/instrumentation.rb
|
336
|
+
- lib/stratagem/instrumentation/models/authentication/authlogic/metadata.rb
|
337
|
+
- lib/stratagem/instrumentation/models/authentication/devise/detect.rb
|
338
|
+
- lib/stratagem/instrumentation/models/authentication/devise/instrumentation.rb
|
339
|
+
- lib/stratagem/instrumentation/models/authentication/devise/metadata.rb
|
340
|
+
- lib/stratagem/instrumentation/models/authentication/metadata.rb
|
341
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/detect.rb
|
342
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/instrumentation.rb
|
343
|
+
- lib/stratagem/instrumentation/models/authentication/restful_authentication/metadata.rb
|
344
|
+
- lib/stratagem/instrumentation/models/detect.rb
|
345
|
+
- lib/stratagem/instrumentation/models/metadata.rb
|
346
|
+
- lib/stratagem/instrumentation/models/mocking.rb
|
347
|
+
- lib/stratagem/instrumentation/models/persistence.rb
|
348
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/detect.rb
|
349
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/extensions.rb
|
350
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/metadata.rb
|
351
|
+
- lib/stratagem/instrumentation/models/persistence/active_record/tracing.rb
|
352
|
+
- lib/stratagem/instrumentation/models/persistence/common/detect.rb
|
353
|
+
- lib/stratagem/instrumentation/models/persistence/common/extensions.rb
|
354
|
+
- lib/stratagem/instrumentation/models/persistence/common/metadata.rb
|
355
|
+
- lib/stratagem/instrumentation/models/persistence/common/tracing.rb
|
356
|
+
- lib/stratagem/instrumentation/models/support_libraries.rb
|
357
|
+
- lib/stratagem/instrumentation/models/support_libraries/friendly_id/detect.rb
|
358
|
+
- lib/stratagem/instrumentation/models/support_libraries/friendly_id/metadata.rb
|
359
|
+
- lib/stratagem/instrumentation/models/support_libraries/state_machine/detect.rb
|
360
|
+
- lib/stratagem/instrumentation/models/support_libraries/state_machine/metadata.rb
|
361
|
+
- lib/stratagem/instrumentation/models/tracing.rb
|
362
|
+
- lib/stratagem/instrumentation/rails.rb
|
363
|
+
- lib/stratagem/instrumentation/rails2/action_controller.rb
|
364
|
+
- lib/stratagem/instrumentation/rails2/action_mailer.rb
|
365
|
+
- lib/stratagem/instrumentation/rails3/parameters.rb
|
366
|
+
- lib/stratagem/instrumentation/request_forgery_protection.rb
|
363
367
|
- lib/stratagem/interface/browser.rb
|
364
368
|
- lib/stratagem/interface/public/images/backgrounds/content.png
|
365
369
|
- lib/stratagem/interface/public/images/backgrounds/shadow.png
|
@@ -399,7 +403,7 @@ files:
|
|
399
403
|
- templates/install/tasks/stratagem.rake
|
400
404
|
- stratagem.gemspec
|
401
405
|
has_rdoc: true
|
402
|
-
homepage: http://
|
406
|
+
homepage: http://www.stratagemapp.com
|
403
407
|
licenses: []
|
404
408
|
|
405
409
|
post_install_message:
|
@@ -433,6 +437,6 @@ rubyforge_project: stratagem
|
|
433
437
|
rubygems_version: 1.3.7
|
434
438
|
signing_key:
|
435
439
|
specification_version: 3
|
436
|
-
summary: Intuitive security analysis
|
440
|
+
summary: Intuitive security analysis for your Rails applications
|
437
441
|
test_files: []
|
438
442
|
|