metasploit_data_models 6.0.5 → 6.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/app/models/mdm/event.rb +2 -2
- data/app/models/mdm/listener.rb +2 -2
- data/app/models/mdm/session.rb +2 -2
- data/app/models/mdm/task.rb +6 -6
- data/app/models/mdm/web_vuln.rb +2 -2
- data/cortex.yaml +2 -0
- data/lib/metasploit_data_models/base64_serializer.rb +26 -2
- data/lib/metasploit_data_models/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +3 -3
- metadata.gz.sig +4 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8729f3b36a9dba01a242ef1771a411729d487ea4a46cdef91738089c9d6844dc
|
|
4
|
+
data.tar.gz: 7cf123db2f63c885f9b6ba349310a93f14ce594929975df5d83b5dc0376757b3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 27a0720202b2b0b528ad7018fedbe095432f36be5fc2a3c8f6adc3f7aead9465930fdf0a0a69d373bdf83070a824a8e10b2ce0ce812f7e3f72c801920fe14b76
|
|
7
|
+
data.tar.gz: 6c8e79021ddb0d9b9cefbd1944f2b6d1f92c2dd51866373975996a7ea4c18c058e0acfc7b4c8b6283425def448a75956bced3fa9343b4716d5c333f44da6a3e8
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/app/models/mdm/event.rb
CHANGED
|
@@ -73,9 +73,9 @@ class Mdm::Event < ApplicationRecord
|
|
|
73
73
|
#
|
|
74
74
|
# @return [Hash]
|
|
75
75
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
76
|
-
serialize :info, coder: MetasploitDataModels::Base64Serializer.new
|
|
76
|
+
serialize :info, coder: MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
77
77
|
else
|
|
78
|
-
serialize :info, MetasploitDataModels::Base64Serializer.new
|
|
78
|
+
serialize :info, MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
79
79
|
end
|
|
80
80
|
|
|
81
81
|
#
|
data/app/models/mdm/listener.rb
CHANGED
|
@@ -70,9 +70,9 @@ class Mdm::Listener < ApplicationRecord
|
|
|
70
70
|
#
|
|
71
71
|
# @return [Hash]
|
|
72
72
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
73
|
-
serialize :options, coder: MetasploitDataModels::Base64Serializer.new
|
|
73
|
+
serialize :options, coder: MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
74
74
|
else
|
|
75
|
-
serialize :options, MetasploitDataModels::Base64Serializer.new
|
|
75
|
+
serialize :options, MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
76
76
|
end
|
|
77
77
|
|
|
78
78
|
#
|
data/app/models/mdm/session.rb
CHANGED
|
@@ -173,9 +173,9 @@ class Mdm::Session < ApplicationRecord
|
|
|
173
173
|
#
|
|
174
174
|
|
|
175
175
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
176
|
-
serialize :datastore, coder: ::MetasploitDataModels::Base64Serializer.new
|
|
176
|
+
serialize :datastore, coder: ::MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
177
177
|
else
|
|
178
|
-
serialize :datastore, ::MetasploitDataModels::Base64Serializer.new
|
|
178
|
+
serialize :datastore, ::MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
179
179
|
end
|
|
180
180
|
|
|
181
181
|
# Returns whether the session can be upgraded to a meterpreter session from a shell session on Windows.
|
data/app/models/mdm/task.rb
CHANGED
|
@@ -131,27 +131,27 @@ class Mdm::Task < ApplicationRecord
|
|
|
131
131
|
#
|
|
132
132
|
# @return [Hash]
|
|
133
133
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
134
|
-
serialize :options, coder: MetasploitDataModels::Base64Serializer.new
|
|
134
|
+
serialize :options, coder: MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
135
135
|
else
|
|
136
|
-
serialize :options, MetasploitDataModels::Base64Serializer.new
|
|
136
|
+
serialize :options, MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
137
137
|
end
|
|
138
138
|
|
|
139
139
|
# Result of task running.
|
|
140
140
|
#
|
|
141
141
|
# @return [Hash]
|
|
142
142
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
143
|
-
serialize :result, coder: MetasploitDataModels::Base64Serializer.new
|
|
143
|
+
serialize :result, coder: MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
144
144
|
else
|
|
145
|
-
serialize :result, MetasploitDataModels::Base64Serializer.new
|
|
145
|
+
serialize :result, MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
146
146
|
end
|
|
147
147
|
|
|
148
148
|
# Settings used to configure this task outside of the {#options module options}.
|
|
149
149
|
#
|
|
150
150
|
# @return [Hash]
|
|
151
151
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
152
|
-
serialize :settings, coder: MetasploitDataModels::Base64Serializer.new
|
|
152
|
+
serialize :settings, coder: MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
153
153
|
else
|
|
154
|
-
serialize :settings, MetasploitDataModels::Base64Serializer.new
|
|
154
|
+
serialize :settings, MetasploitDataModels::Base64Serializer.new(coerce: true)
|
|
155
155
|
end
|
|
156
156
|
|
|
157
157
|
#
|
data/app/models/mdm/web_vuln.rb
CHANGED
|
@@ -142,9 +142,9 @@ class Mdm::WebVuln < ApplicationRecord
|
|
|
142
142
|
#
|
|
143
143
|
# @return [Array<Array(String, String)>] Array of parameter key value pairs
|
|
144
144
|
if ActiveRecord::VERSION::MAJOR >= 7 && ActiveRecord::VERSION::MINOR >= 1
|
|
145
|
-
serialize :params, coder: MetasploitDataModels::Base64Serializer.new(:
|
|
145
|
+
serialize :params, coder: MetasploitDataModels::Base64Serializer.new(default: DEFAULT_PARAMS)
|
|
146
146
|
else
|
|
147
|
-
serialize :params, MetasploitDataModels::Base64Serializer.new(:
|
|
147
|
+
serialize :params, MetasploitDataModels::Base64Serializer.new(default: DEFAULT_PARAMS)
|
|
148
148
|
end
|
|
149
149
|
|
|
150
150
|
#
|
data/cortex.yaml
CHANGED
|
@@ -15,6 +15,10 @@ class MetasploitDataModels::Base64Serializer
|
|
|
15
15
|
|
|
16
16
|
# The default for {#default}
|
|
17
17
|
DEFAULT = {}
|
|
18
|
+
|
|
19
|
+
# The default for {#coerce}
|
|
20
|
+
COERCE_DEFAULT = false
|
|
21
|
+
|
|
18
22
|
# Deserializers for {#load}
|
|
19
23
|
# 1. Base64 decoding and then unmarshalling the value.
|
|
20
24
|
# 2. Parsing the value as YAML.
|
|
@@ -47,6 +51,24 @@ class MetasploitDataModels::Base64Serializer
|
|
|
47
51
|
end
|
|
48
52
|
|
|
49
53
|
attr_writer :default
|
|
54
|
+
attr_writer :coerce
|
|
55
|
+
|
|
56
|
+
# Recursively coerce the object that has been passed in, keeping primitive types as their original type,
|
|
57
|
+
# while changing objects that cannot be serialized into a string representation of the object data.
|
|
58
|
+
def coerce_object(value)
|
|
59
|
+
case value
|
|
60
|
+
when Hash
|
|
61
|
+
value.transform_values { |v| coerce_object(v) }
|
|
62
|
+
when Array
|
|
63
|
+
value.map { |v| coerce_object(v) }
|
|
64
|
+
when File, IO
|
|
65
|
+
value.inspect
|
|
66
|
+
when String, Integer, Float, TrueClass, FalseClass, NilClass, Symbol
|
|
67
|
+
value
|
|
68
|
+
else
|
|
69
|
+
value.to_s
|
|
70
|
+
end
|
|
71
|
+
end
|
|
50
72
|
|
|
51
73
|
# Serializes the value by marshalling the value and then base64 encodes the marshaled value.
|
|
52
74
|
#
|
|
@@ -54,7 +76,8 @@ class MetasploitDataModels::Base64Serializer
|
|
|
54
76
|
# @return [String]
|
|
55
77
|
def dump(value)
|
|
56
78
|
# Always store data back in the Marshal format
|
|
57
|
-
|
|
79
|
+
to_serialize = @coerce ? coerce_object(value) : value
|
|
80
|
+
marshalled = Marshal.dump(to_serialize)
|
|
58
81
|
base64_encoded = [ marshalled ].pack('m')
|
|
59
82
|
|
|
60
83
|
base64_encoded
|
|
@@ -63,9 +86,10 @@ class MetasploitDataModels::Base64Serializer
|
|
|
63
86
|
# @param attributes [Hash] attributes
|
|
64
87
|
# @option attributes [Object] :default ({}) Value to use for {#default}.
|
|
65
88
|
def initialize(attributes={})
|
|
66
|
-
attributes.assert_valid_keys(:default)
|
|
89
|
+
attributes.assert_valid_keys(:default, :coerce)
|
|
67
90
|
|
|
68
91
|
@default = attributes.fetch(:default, DEFAULT)
|
|
92
|
+
@coerce = attributes.fetch(:coerce, COERCE_DEFAULT)
|
|
69
93
|
end
|
|
70
94
|
|
|
71
95
|
# Deserializes the value by either
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: metasploit_data_models
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.0.
|
|
4
|
+
version: 6.0.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Metasploit Hackers
|
|
@@ -34,7 +34,7 @@ cert_chain:
|
|
|
34
34
|
DgscAao7wB3xW2BWEp1KnaDWkf1x9ttgoBEYyuYwU7uatB67kBQG1PKvLt79wHvz
|
|
35
35
|
Dxs+KOjGbBRfMnPgVGYkORKVrZIwlaboHbDKxcVW5xv+oZc7KYXWGg==
|
|
36
36
|
-----END CERTIFICATE-----
|
|
37
|
-
date:
|
|
37
|
+
date: 2025-02-13 00:00:00.000000000 Z
|
|
38
38
|
dependencies:
|
|
39
39
|
- !ruby/object:Gem::Dependency
|
|
40
40
|
name: metasploit-yard
|
|
@@ -727,7 +727,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
727
727
|
- !ruby/object:Gem::Version
|
|
728
728
|
version: '0'
|
|
729
729
|
requirements: []
|
|
730
|
-
rubygems_version: 3.3.
|
|
730
|
+
rubygems_version: 3.3.3
|
|
731
731
|
signing_key:
|
|
732
732
|
specification_version: 4
|
|
733
733
|
summary: Database code for MSF and Metasploit Pro
|
metadata.gz.sig
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
`�U��3uEh?�v��N>���I��&z)_ ����&�(WBͭ�J�b�iNb�R�4D��>;4�6�5���4D���Z����ޤ�7�y�z���4�^N
|
|
2
|
+
��
|
|
3
|
+
���}R�r)�B�eo�G����5���Xw��U ���hWXefI�sOԅ���@�T{�L���>�>�b�z�ȧ�S���d�����-��k��7NXb�P�=���+w���ԭ��,G��%k;���
|
|
4
|
+
T�8�\���//�r�i>�%FE���V�����G�Սk�� g/R
|