immunio 1.1.10 → 1.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -32
- data/lib/immunio.rb +1 -0
- data/lib/immunio/plugins/active_record.rb +3 -1
- data/lib/immunio/plugins/http_tracker.rb +0 -20
- data/lib/immunio/plugins/metal.rb +33 -0
- data/lib/immunio/rails.rb +0 -1
- data/lib/immunio/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c543f9eeb50f20ef762a41876363e414540aad9e
|
4
|
+
data.tar.gz: 3ff0d95fb36d2fbd6c5c8b2937ec1af7ca04059f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 215336fcc2822b3ad8473742e7b5bf357e4c54aa2e044d6b0a2e85188d3f47f3a2906de2ae694bcd0e9db4db6f7f08f208fe69d118e698112bde38648e345575
|
7
|
+
data.tar.gz: 594d62ffac2d372f7afc745faffa35ea856767d8ca395f8045a4a35cccf6427741dea15a5d4b6a7a8a14e0371873ec9bffa7a0f1b4182d35132af44f7fffeb14
|
data/README.md
CHANGED
@@ -133,35 +133,3 @@ end
|
|
133
133
|
|
134
134
|
- Ruby 1.9.3 and up
|
135
135
|
- Rails 3.2 to 4.2
|
136
|
-
|
137
|
-
## Building the gem
|
138
|
-
|
139
|
-
To build the pure Ruby gem:
|
140
|
-
|
141
|
-
```sh
|
142
|
-
$ rake gem
|
143
|
-
```
|
144
|
-
|
145
|
-
To build with bundled pre-compiled C extensions:
|
146
|
-
|
147
|
-
```sh
|
148
|
-
$ rake native gem
|
149
|
-
```
|
150
|
-
|
151
|
-
For cross-compilation, see https://github.com/luislavena/rake-compiler#cross-compilation---the-future-is-now.
|
152
|
-
|
153
|
-
## Testing
|
154
|
-
|
155
|
-
To run tests (under Rails 4.2):
|
156
|
-
|
157
|
-
```sh
|
158
|
-
$ rake test
|
159
|
-
```
|
160
|
-
|
161
|
-
To run tests under Rails 3.2:
|
162
|
-
|
163
|
-
```sh
|
164
|
-
$ export RAILS_VERSION=3.2
|
165
|
-
$ bundle update rails
|
166
|
-
$ rake test
|
167
|
-
```
|
data/lib/immunio.rb
CHANGED
@@ -22,6 +22,7 @@ module Immunio
|
|
22
22
|
require_relative "immunio/plugins/authlogic"
|
23
23
|
require_relative "immunio/plugins/redirect"
|
24
24
|
require_relative "immunio/plugins/eval"
|
25
|
+
require_relative "immunio/plugins/metal"
|
25
26
|
|
26
27
|
# Load and activate Rails engine
|
27
28
|
require_relative "immunio/rails"
|
@@ -583,7 +583,9 @@ module Immunio
|
|
583
583
|
# to a statement.
|
584
584
|
def call(payload)
|
585
585
|
Request.time "plugin", "#{Module.nesting[0]}::#{__method__}" do
|
586
|
-
|
586
|
+
# The #{payload} in the log string is causing lots of Rails 3.2
|
587
|
+
# upstream test failures with Ruby 1.9.3.
|
588
|
+
# Immunio.logger.debug { "New ActiveRecord SQL query: #{payload}" }
|
587
589
|
|
588
590
|
connection_id = payload[:connection_id]
|
589
591
|
|
@@ -15,7 +15,6 @@ module Immunio
|
|
15
15
|
Immunio.new_request(request)
|
16
16
|
|
17
17
|
Immunio.run_hook! "http_tracker", "http_request_start", meta_from_env(env)
|
18
|
-
Immunio.run_hook! "http_tracker", "framework_route", route_name: route_name(env)
|
19
18
|
|
20
19
|
env['rack.input'] = InputWrapper.new(env['rack.input'])
|
21
20
|
|
@@ -134,25 +133,6 @@ module Immunio
|
|
134
133
|
}
|
135
134
|
end
|
136
135
|
|
137
|
-
def route_name(env)
|
138
|
-
# Determine the route name in controller#action format:
|
139
|
-
route_name = nil
|
140
|
-
|
141
|
-
if defined?(Rails.application) && Rails.application.present?
|
142
|
-
begin
|
143
|
-
request = rack_request(env)
|
144
|
-
path = request.env['PATH_INFO']
|
145
|
-
method = request.env['REQUEST_METHOD'].downcase.to_sym
|
146
|
-
url = Rails.application.routes.recognize_path(path, method: method)
|
147
|
-
route_name = "#{url[:controller]}##{url[:action]}"
|
148
|
-
rescue StandardError
|
149
|
-
route_name = nil
|
150
|
-
end
|
151
|
-
end
|
152
|
-
|
153
|
-
route_name
|
154
|
-
end
|
155
|
-
|
156
136
|
def session_was_loaded?(session)
|
157
137
|
session && (session.respond_to?(:loaded?) ? session.loaded? : true)
|
158
138
|
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module Immunio
|
2
|
+
module MetalHook
|
3
|
+
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
included do
|
6
|
+
if method_defined? :dispatch
|
7
|
+
Immunio::Utils.alias_method_chain self, :dispatch, :immunio
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
protected
|
12
|
+
|
13
|
+
def dispatch_with_immunio(name, request)
|
14
|
+
Request.time 'plugin', "#{Module.nesting[0]}::#{__method__}" do
|
15
|
+
route_name = "#{controller_path}##{name}"
|
16
|
+
Immunio.logger.debug { "MetalHook#dispatch: route_name: #{route_name}" }
|
17
|
+
|
18
|
+
Immunio.run_hook! 'metal', 'framework_route', route_name: route_name
|
19
|
+
|
20
|
+
Request.pause "plugin", "#{Module.nesting[0]}::#{__method__}" do
|
21
|
+
dispatch_without_immunio name, request
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
Immunio::Plugin.load(
|
29
|
+
'ActionController (Metal)',
|
30
|
+
hooks: %w(framework_route)) do |plugin|
|
31
|
+
ActionController::Metal.send :include, Immunio::MetalHook
|
32
|
+
plugin.loaded! ActionPack::VERSION::STRING
|
33
|
+
end
|
data/lib/immunio/rails.rb
CHANGED
data/lib/immunio/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: immunio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Immunio
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -153,6 +153,7 @@ files:
|
|
153
153
|
- lib/immunio/plugins/http_finisher.rb
|
154
154
|
- lib/immunio/plugins/http_tracker.rb
|
155
155
|
- lib/immunio/plugins/io.rb
|
156
|
+
- lib/immunio/plugins/metal.rb
|
156
157
|
- lib/immunio/plugins/redirect.rb
|
157
158
|
- lib/immunio/plugins/warden.rb
|
158
159
|
- lib/immunio/processor.rb
|
@@ -465,7 +466,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
465
466
|
version: '0'
|
466
467
|
requirements: []
|
467
468
|
rubyforge_project:
|
468
|
-
rubygems_version: 2.
|
469
|
+
rubygems_version: 2.6.10
|
469
470
|
signing_key:
|
470
471
|
specification_version: 4
|
471
472
|
summary: Immunio Ruby agent
|