metasploit_data_models 4.0.2 → 4.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +1 -1
- data/.github/workflows/verify.yml +68 -0
- data/app/models/mdm/nexpose_console.rb +7 -4
- data/app/models/mdm/workspace.rb +6 -5
- data/app/models/metasploit_data_models/search/visitor/where.rb +1 -1
- data/db/migrate/20190308134512_create_async_callbacks.rb +0 -1
- data/lib/metasploit_data_models/version.rb +1 -1
- data/metasploit_data_models.gemspec +9 -18
- data/spec/app/models/mdm/nexpose_console_spec.rb +15 -1
- data/spec/app/models/metasploit_data_models/ip_address/v4/segment/single_spec.rb +3 -3
- data/spec/app/models/metasploit_data_models/search/visitor/where_spec.rb +1 -1
- data/spec/dummy/config/{database.yml.travis → database.yml.github_actions} +4 -5
- metadata +43 -42
- metadata.gz.sig +0 -0
- data/.travis.yml +0 -22
- data/app/validators/ip_format_validator.rb +0 -22
- data/app/validators/parameters_validator.rb +0 -129
- data/app/validators/password_is_strong_validator.rb +0 -117
- data/bin/mdm_console +0 -68
- data/bin/rails +0 -14
- data/spec/app/validators/parameters_validator_spec.rb +0 -342
- data/spec/app/validators/password_is_strong_validator_spec.rb +0 -332
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cce023c97fe6144aadc776c3940166846e8a79486744d9552a7b460b61641525
|
4
|
+
data.tar.gz: 8400cc5756c2dfd3d063c18a9ff0257c8729f85008ce043217af3db28c5cade2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 79deb575ba6a357e752ebcc30b767cf395b6f0a1cc5ff6042da23c439c3f96d6e8c7875fa4137b42e1ae5825e15b81d948bc8c6cc5464912ee23cf368f976683
|
7
|
+
data.tar.gz: 10c4a62fed219f974469d48c4e9e28ff0056f7f1401c3562ee19a028a2fe93c5c312907b4e5d8c5d2b39e914d27e25100474ca32fb79f5006fdc71e0169946de
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
@@ -1 +1 @@
|
|
1
|
-
�
|
1
|
+
H���?���!�$�J�����GBASf�<p�"���`@�՛^�p_>�8���)a�c�Ќ|%H�ر3�cdM�����HQ��o���JY_��tF���]�=$D��]ˊ�����[z$����f��A�I5.�ԃ���(��j��-P7��e��Ώ�i"T�@���X����7$�L]j<`J�ue��9���Q�\i8���X߀J����Dw%w�����=l�z�ˠH��]�
|
@@ -0,0 +1,68 @@
|
|
1
|
+
name: Verify
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- '*'
|
7
|
+
pull_request:
|
8
|
+
branches:
|
9
|
+
- '*'
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
test:
|
13
|
+
runs-on: ubuntu-16.04
|
14
|
+
timeout-minutes: 40
|
15
|
+
|
16
|
+
services:
|
17
|
+
postgres:
|
18
|
+
image: postgres:9.6
|
19
|
+
ports: ["5432:5432"]
|
20
|
+
env:
|
21
|
+
POSTGRES_USER: postgres
|
22
|
+
POSTGRES_PASSWORD: postgres
|
23
|
+
options: >-
|
24
|
+
--health-cmd pg_isready
|
25
|
+
--health-interval 10s
|
26
|
+
--health-timeout 5s
|
27
|
+
--health-retries 5
|
28
|
+
|
29
|
+
strategy:
|
30
|
+
fail-fast: true
|
31
|
+
matrix:
|
32
|
+
ruby:
|
33
|
+
- 2.7
|
34
|
+
|
35
|
+
env:
|
36
|
+
RAILS_ENV: test
|
37
|
+
|
38
|
+
name: Ruby ${{ matrix.ruby }}
|
39
|
+
steps:
|
40
|
+
- name: Install system dependencies
|
41
|
+
run: sudo apt-get install libpcap-dev graphviz
|
42
|
+
|
43
|
+
- name: Checkout code
|
44
|
+
uses: actions/checkout@v2
|
45
|
+
|
46
|
+
- uses: actions/setup-ruby@v1
|
47
|
+
with:
|
48
|
+
ruby-version: ${{ matrix.ruby }}
|
49
|
+
|
50
|
+
- name: Setup bundler
|
51
|
+
run: |
|
52
|
+
gem install bundler
|
53
|
+
|
54
|
+
- name: Bundle install
|
55
|
+
run: |
|
56
|
+
bundle config path vendor/bundle
|
57
|
+
bundle install --jobs 4 --retry 3
|
58
|
+
|
59
|
+
- name: Test
|
60
|
+
run: |
|
61
|
+
cp spec/dummy/config/database.yml.github_actions spec/dummy/config/database.yml
|
62
|
+
bundle exec rake --version
|
63
|
+
bundle exec rake db:create db:migrate
|
64
|
+
|
65
|
+
# Disabling this check because it is proving unreliable
|
66
|
+
# git diff --exit-code spec/dummy/db/structure.sql
|
67
|
+
bundle exec rake spec
|
68
|
+
bundle exec rake yard
|
@@ -1,6 +1,5 @@
|
|
1
1
|
# A connection to Nexpose from Metasploit.
|
2
2
|
class Mdm::NexposeConsole < ApplicationRecord
|
3
|
-
|
4
3
|
#
|
5
4
|
# Associations
|
6
5
|
#
|
@@ -80,7 +79,7 @@ class Mdm::NexposeConsole < ApplicationRecord
|
|
80
79
|
# Callbacks
|
81
80
|
#
|
82
81
|
|
83
|
-
|
82
|
+
before_validation :strip_protocol
|
84
83
|
|
85
84
|
#
|
86
85
|
# Serializations
|
@@ -96,10 +95,14 @@ class Mdm::NexposeConsole < ApplicationRecord
|
|
96
95
|
# Validations
|
97
96
|
#
|
98
97
|
|
99
|
-
validates :address, :presence => true
|
98
|
+
validates :address, :presence => true, :address_format => true
|
99
|
+
|
100
100
|
validates :name, :presence => true
|
101
|
+
|
101
102
|
validates :password, :presence => true
|
103
|
+
|
102
104
|
validates :port, :numericality => { :only_integer => true }, :inclusion => {:in => 1..65535}
|
105
|
+
|
103
106
|
validates :username, :presence => true
|
104
107
|
|
105
108
|
#
|
@@ -110,7 +113,7 @@ class Mdm::NexposeConsole < ApplicationRecord
|
|
110
113
|
#
|
111
114
|
# @return [void]
|
112
115
|
def strip_protocol
|
113
|
-
self.address.gsub!(/^http(s)*:\/\//i,'')
|
116
|
+
self.address.gsub!(/^http(s)*:\/\//i,'') unless self.address.nil?
|
114
117
|
end
|
115
118
|
|
116
119
|
Metasploit::Concern.run(self)
|
data/app/models/mdm/workspace.rb
CHANGED
@@ -21,11 +21,6 @@ class Mdm::Workspace < ApplicationRecord
|
|
21
21
|
class_name: 'MetasploitDataModels::AutomaticExploitation:MatchSet',
|
22
22
|
inverse_of: :workspace
|
23
23
|
|
24
|
-
# @deprecated Use `Mdm::Workspace#core_credentials` defined by `Metasploit::Credential::Engine` to get
|
25
|
-
# `Metasploit::Credential::Core`s gathered from this workspace's {#hosts} and {#services}.
|
26
|
-
#
|
27
|
-
# Creds gathered from this workspace's {#hosts} and {#services}.
|
28
|
-
has_many :creds, :through => :services, :class_name => 'Mdm::Cred'
|
29
24
|
|
30
25
|
# Events that occurred in this workspace.
|
31
26
|
has_many :events, dependent: :delete_all, :class_name => 'Mdm::Event'
|
@@ -80,6 +75,12 @@ class Mdm::Workspace < ApplicationRecord
|
|
80
75
|
|
81
76
|
# Sessions opened on {#hosts} in this workspace.
|
82
77
|
has_many :sessions, :through => :hosts, :class_name => 'Mdm::Session'
|
78
|
+
|
79
|
+
# @deprecated Use `Mdm::Workspace#core_credentials` defined by `Metasploit::Credential::Engine` to get
|
80
|
+
# `Metasploit::Credential::Core`s gathered from this workspace's {#hosts} and {#services}.
|
81
|
+
#
|
82
|
+
# Creds gathered from this workspace's {#hosts} and {#services}.
|
83
|
+
has_many :creds, :through => :services, :class_name => 'Mdm::Cred'
|
83
84
|
|
84
85
|
#
|
85
86
|
# Attributes
|
@@ -91,7 +91,7 @@ class MetasploitDataModels::Search::Visitor::Where
|
|
91
91
|
visit 'MetasploitDataModels::Search::Operation::Port::Range' do |range_operation|
|
92
92
|
attribute = attribute_visitor.visit range_operation.operator
|
93
93
|
|
94
|
-
attribute.
|
94
|
+
attribute.between(range_operation.value)
|
95
95
|
end
|
96
96
|
|
97
97
|
#
|
@@ -5,27 +5,19 @@ require 'metasploit_data_models/version'
|
|
5
5
|
Gem::Specification.new do |s|
|
6
6
|
s.name = 'metasploit_data_models'
|
7
7
|
s.version = MetasploitDataModels::VERSION
|
8
|
-
s.authors = [
|
9
|
-
|
10
|
-
'Luke Imhoff',
|
11
|
-
"David 'thelightcosine' Maloney",
|
12
|
-
"Trevor 'burlyscudd' Rosen"
|
13
|
-
]
|
14
|
-
s.email = [
|
15
|
-
'shuckins@rapid7.com',
|
16
|
-
'luke_imhoff@rapid7.com',
|
17
|
-
'dmaloney@rapid7.com',
|
18
|
-
'trevor_rosen@rapid7.com'
|
19
|
-
]
|
8
|
+
s.authors = ['Metasploit Hackers']
|
9
|
+
s.email = ['msfdev@metasploit.com']
|
20
10
|
s.homepage = ""
|
21
11
|
s.summary = %q{Database code for MSF and Metasploit Pro}
|
22
12
|
s.description = %q{Implements minimal ActiveRecord models and database helper code used in both the Metasploit Framework (MSF) and Metasploit commercial editions.}
|
23
13
|
|
24
|
-
s.files = `git ls-files`.split("\n")
|
14
|
+
s.files = `git ls-files`.split("\n").reject { |file|
|
15
|
+
file =~ /^bin/
|
16
|
+
}
|
25
17
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
26
18
|
s.require_paths = %w{app/models app/validators lib}
|
27
19
|
|
28
|
-
s.required_ruby_version = '>= 2.
|
20
|
+
s.required_ruby_version = '>= 2.4'
|
29
21
|
|
30
22
|
# ---- Dependencies ----
|
31
23
|
# documentation
|
@@ -36,9 +28,7 @@ Gem::Specification.new do |s|
|
|
36
28
|
|
37
29
|
s.add_development_dependency 'rake'
|
38
30
|
|
39
|
-
|
40
|
-
# @note 0.8.7.4 has a bug where attribute writers show up as undocumented
|
41
|
-
s.add_development_dependency 'yard', '< 0.8.7.4'
|
31
|
+
s.add_development_dependency 'yard'
|
42
32
|
# debugging
|
43
33
|
s.add_development_dependency 'pry'
|
44
34
|
|
@@ -46,8 +36,9 @@ Gem::Specification.new do |s|
|
|
46
36
|
s.add_runtime_dependency 'activerecord', '~>5.2.2'
|
47
37
|
s.add_runtime_dependency 'activesupport', '~>5.2.2'
|
48
38
|
s.add_runtime_dependency 'metasploit-concern'
|
49
|
-
s.add_runtime_dependency 'metasploit-model'
|
39
|
+
s.add_runtime_dependency 'metasploit-model', '>=3.1'
|
50
40
|
s.add_runtime_dependency 'railties', '~>5.2.2'
|
41
|
+
s.add_runtime_dependency 'webrick'
|
51
42
|
|
52
43
|
# os fingerprinting
|
53
44
|
s.add_runtime_dependency 'recog', '~> 2.0'
|
@@ -32,7 +32,7 @@ RSpec.describe Mdm::NexposeConsole, type: :model do
|
|
32
32
|
|
33
33
|
context '#destroy' do
|
34
34
|
it 'should successfully destroy the object' do
|
35
|
-
nexpose_console = FactoryBot.create(:mdm_nexpose_console)
|
35
|
+
nexpose_console = FactoryBot.create(:mdm_nexpose_console, :address => 'localhost')
|
36
36
|
expect {
|
37
37
|
nexpose_console.destroy
|
38
38
|
}.to_not raise_error
|
@@ -50,6 +50,20 @@ RSpec.describe Mdm::NexposeConsole, type: :model do
|
|
50
50
|
expect(addressless_nexpose_console.errors[:address]).to include("can't be blank")
|
51
51
|
end
|
52
52
|
|
53
|
+
it 'should be valid for a valid hostname' do
|
54
|
+
host_nexpose_console = FactoryBot.build(:mdm_nexpose_console, :address => 'testvalue.test.com')
|
55
|
+
expect(host_nexpose_console).to be_valid
|
56
|
+
end
|
57
|
+
|
58
|
+
it 'should be invalid for a malformed hostname' do
|
59
|
+
host_nexpose_consoles = ['testvalue.test.com:', 'testvalue-.test.com', '[testvalue.test.com]']
|
60
|
+
host_nexpose_consoles.each do | entry |
|
61
|
+
host_nexpose_console = FactoryBot.build(:mdm_nexpose_console, :address => entry)
|
62
|
+
expect(host_nexpose_console).not_to be_valid
|
63
|
+
expect(host_nexpose_console.errors[:address]).to include("must be a valid (IP or hostname) address")
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
53
67
|
it 'should be valid for IPv4 format' do
|
54
68
|
ipv4_nexpose_console = FactoryBot.build(:mdm_nexpose_console, :address => '192.168.1.120')
|
55
69
|
expect(ipv4_nexpose_console).to be_valid
|
@@ -233,7 +233,7 @@ RSpec.describe MetasploitDataModels::IPAddress::V4::Segment::Single, type: :mode
|
|
233
233
|
end
|
234
234
|
|
235
235
|
context '#to_s' do
|
236
|
-
subject(:
|
236
|
+
subject(:call_to_s) {
|
237
237
|
single.to_s
|
238
238
|
}
|
239
239
|
|
@@ -256,7 +256,7 @@ RSpec.describe MetasploitDataModels::IPAddress::V4::Segment::Single, type: :mode
|
|
256
256
|
it 'delegates to #value' do
|
257
257
|
expect(value).to receive(:to_s)
|
258
258
|
|
259
|
-
|
259
|
+
call_to_s
|
260
260
|
end
|
261
261
|
end
|
262
262
|
|
@@ -321,4 +321,4 @@ RSpec.describe MetasploitDataModels::IPAddress::V4::Segment::Single, type: :mode
|
|
321
321
|
end
|
322
322
|
end
|
323
323
|
end
|
324
|
-
end
|
324
|
+
end
|
@@ -129,7 +129,7 @@ RSpec.describe MetasploitDataModels::Search::Visitor::Where, type: :model do
|
|
129
129
|
attribute = double('Visited Operator')
|
130
130
|
allow(visitor.attribute_visitor).to receive(:visit).with(operator).and_return(attribute)
|
131
131
|
|
132
|
-
expect(attribute).to receive(:
|
132
|
+
expect(attribute).to receive(:between).with(range)
|
133
133
|
|
134
134
|
visit
|
135
135
|
end
|
@@ -1,18 +1,17 @@
|
|
1
|
-
# @note This file is only for use in
|
1
|
+
# @note This file is only for use in Github Actions. If you need to make a `spec/dummy/config/database.yml` for running
|
2
2
|
# rake, rake spec, or rspec locally, please customize `spec/dummy/config/database.yml.example`.
|
3
3
|
#
|
4
4
|
# @example Customizing config/database.yml.example
|
5
5
|
# cp spec/dummy/config/database.yml.example spec/dummy/config/database.yml
|
6
6
|
# # update password fields for each environment's user
|
7
7
|
|
8
|
-
# Using the postgres user locally without a host and port is the supported configuration from Travis-CI
|
9
|
-
#
|
10
|
-
# @see http://about.travis-ci.org/docs/user/database-setup/#PostgreSQL
|
11
8
|
development: &pgsql
|
12
9
|
adapter: postgresql
|
13
10
|
database: metasploit_data_models_development
|
11
|
+
host: localhost
|
14
12
|
username: postgres
|
15
|
-
|
13
|
+
password: postgres
|
14
|
+
pool: 25
|
16
15
|
timeout: 5
|
17
16
|
|
18
17
|
# Warning: The database defined as "test" will be erased and re-generated from your development database when you run
|
metadata
CHANGED
@@ -1,13 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metasploit_data_models
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
8
|
-
- Luke Imhoff
|
9
|
-
- David 'thelightcosine' Maloney
|
10
|
-
- Trevor 'burlyscudd' Rosen
|
7
|
+
- Metasploit Hackers
|
11
8
|
autorequire:
|
12
9
|
bindir: bin
|
13
10
|
cert_chain:
|
@@ -67,20 +64,20 @@ cert_chain:
|
|
67
64
|
-----END CERTIFICATE-----
|
68
65
|
- |
|
69
66
|
-----BEGIN CERTIFICATE-----
|
70
|
-
|
67
|
+
MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
|
71
68
|
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
72
69
|
d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
|
73
|
-
|
70
|
+
SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
|
74
71
|
MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
|
75
72
|
BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
73
|
+
IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
|
74
|
+
4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
|
75
|
+
WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
|
76
|
+
gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
|
77
|
+
9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
|
78
|
+
yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
|
79
|
+
r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
|
80
|
+
dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
|
84
81
|
B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
|
85
82
|
L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
|
86
83
|
L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
|
@@ -89,14 +86,14 @@ cert_chain:
|
|
89
86
|
JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
|
90
87
|
AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
|
91
88
|
ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
89
|
+
BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
|
90
|
+
37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
|
91
|
+
YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
|
92
|
+
dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
|
93
|
+
EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
|
94
|
+
9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
|
98
95
|
-----END CERTIFICATE-----
|
99
|
-
date:
|
96
|
+
date: 2021-04-29 00:00:00.000000000 Z
|
100
97
|
dependencies:
|
101
98
|
- !ruby/object:Gem::Dependency
|
102
99
|
name: metasploit-yard
|
@@ -158,16 +155,16 @@ dependencies:
|
|
158
155
|
name: yard
|
159
156
|
requirement: !ruby/object:Gem::Requirement
|
160
157
|
requirements:
|
161
|
-
- - "
|
158
|
+
- - ">="
|
162
159
|
- !ruby/object:Gem::Version
|
163
|
-
version: 0
|
160
|
+
version: '0'
|
164
161
|
type: :development
|
165
162
|
prerelease: false
|
166
163
|
version_requirements: !ruby/object:Gem::Requirement
|
167
164
|
requirements:
|
168
|
-
- - "
|
165
|
+
- - ">="
|
169
166
|
- !ruby/object:Gem::Version
|
170
|
-
version: 0
|
167
|
+
version: '0'
|
171
168
|
- !ruby/object:Gem::Dependency
|
172
169
|
name: pry
|
173
170
|
requirement: !ruby/object:Gem::Requirement
|
@@ -230,14 +227,14 @@ dependencies:
|
|
230
227
|
requirements:
|
231
228
|
- - ">="
|
232
229
|
- !ruby/object:Gem::Version
|
233
|
-
version: '
|
230
|
+
version: '3.1'
|
234
231
|
type: :runtime
|
235
232
|
prerelease: false
|
236
233
|
version_requirements: !ruby/object:Gem::Requirement
|
237
234
|
requirements:
|
238
235
|
- - ">="
|
239
236
|
- !ruby/object:Gem::Version
|
240
|
-
version: '
|
237
|
+
version: '3.1'
|
241
238
|
- !ruby/object:Gem::Dependency
|
242
239
|
name: railties
|
243
240
|
requirement: !ruby/object:Gem::Requirement
|
@@ -252,6 +249,20 @@ dependencies:
|
|
252
249
|
- - "~>"
|
253
250
|
- !ruby/object:Gem::Version
|
254
251
|
version: 5.2.2
|
252
|
+
- !ruby/object:Gem::Dependency
|
253
|
+
name: webrick
|
254
|
+
requirement: !ruby/object:Gem::Requirement
|
255
|
+
requirements:
|
256
|
+
- - ">="
|
257
|
+
- !ruby/object:Gem::Version
|
258
|
+
version: '0'
|
259
|
+
type: :runtime
|
260
|
+
prerelease: false
|
261
|
+
version_requirements: !ruby/object:Gem::Requirement
|
262
|
+
requirements:
|
263
|
+
- - ">="
|
264
|
+
- !ruby/object:Gem::Version
|
265
|
+
version: '0'
|
255
266
|
- !ruby/object:Gem::Dependency
|
256
267
|
name: recog
|
257
268
|
requirement: !ruby/object:Gem::Requirement
|
@@ -311,19 +322,16 @@ dependencies:
|
|
311
322
|
description: Implements minimal ActiveRecord models and database helper code used
|
312
323
|
in both the Metasploit Framework (MSF) and Metasploit commercial editions.
|
313
324
|
email:
|
314
|
-
-
|
315
|
-
- luke_imhoff@rapid7.com
|
316
|
-
- dmaloney@rapid7.com
|
317
|
-
- trevor_rosen@rapid7.com
|
325
|
+
- msfdev@metasploit.com
|
318
326
|
executables: []
|
319
327
|
extensions: []
|
320
328
|
extra_rdoc_files: []
|
321
329
|
files:
|
322
330
|
- ".coveralls.yml"
|
331
|
+
- ".github/workflows/verify.yml"
|
323
332
|
- ".gitignore"
|
324
333
|
- ".rspec"
|
325
334
|
- ".simplecov"
|
326
|
-
- ".travis.yml"
|
327
335
|
- ".yardopts"
|
328
336
|
- CHANGELOG.md
|
329
337
|
- CONTRIBUTING.md
|
@@ -408,11 +416,6 @@ files:
|
|
408
416
|
- app/models/metasploit_data_models/search/visitor/method.rb
|
409
417
|
- app/models/metasploit_data_models/search/visitor/relation.rb
|
410
418
|
- app/models/metasploit_data_models/search/visitor/where.rb
|
411
|
-
- app/validators/ip_format_validator.rb
|
412
|
-
- app/validators/parameters_validator.rb
|
413
|
-
- app/validators/password_is_strong_validator.rb
|
414
|
-
- bin/mdm_console
|
415
|
-
- bin/rails
|
416
419
|
- config/initializers/arel_helper.rb
|
417
420
|
- config/initializers/ipaddr.rb
|
418
421
|
- config/locales/en.yml
|
@@ -649,8 +652,6 @@ files:
|
|
649
652
|
- spec/app/models/metasploit_data_models/search/visitor/method_spec.rb
|
650
653
|
- spec/app/models/metasploit_data_models/search/visitor/relation_spec.rb
|
651
654
|
- spec/app/models/metasploit_data_models/search/visitor/where_spec.rb
|
652
|
-
- spec/app/validators/parameters_validator_spec.rb
|
653
|
-
- spec/app/validators/password_is_strong_validator_spec.rb
|
654
655
|
- spec/dummy/Rakefile
|
655
656
|
- spec/dummy/app/assets/config/manifest.js
|
656
657
|
- spec/dummy/app/assets/javascripts/application.js
|
@@ -668,7 +669,7 @@ files:
|
|
668
669
|
- spec/dummy/config/application.rb
|
669
670
|
- spec/dummy/config/boot.rb
|
670
671
|
- spec/dummy/config/database.yml.example
|
671
|
-
- spec/dummy/config/database.yml.
|
672
|
+
- spec/dummy/config/database.yml.github_actions
|
672
673
|
- spec/dummy/config/environment.rb
|
673
674
|
- spec/dummy/config/environments/development.rb
|
674
675
|
- spec/dummy/config/environments/production.rb
|
@@ -777,7 +778,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
777
778
|
requirements:
|
778
779
|
- - ">="
|
779
780
|
- !ruby/object:Gem::Version
|
780
|
-
version: '2.
|
781
|
+
version: '2.4'
|
781
782
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
782
783
|
requirements:
|
783
784
|
- - ">="
|