metasploit-model 0.27.3-java → 0.27.4-java

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.
Files changed (127) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +1 -1
  3. data/app/models/metasploit/model/association/reflection.rb +0 -3
  4. data/app/models/metasploit/model/module/ancestor/spec/template.rb +0 -3
  5. data/app/models/metasploit/model/module/class/spec/template.rb +0 -4
  6. data/app/models/metasploit/model/module/instance/spec/template.rb +0 -4
  7. data/app/models/metasploit/model/search/group/base.rb +0 -3
  8. data/app/models/metasploit/model/search/group/intersection.rb +0 -3
  9. data/app/models/metasploit/model/search/group/union.rb +0 -3
  10. data/app/models/metasploit/model/search/operation/association.rb +0 -2
  11. data/app/models/metasploit/model/search/operation/base.rb +0 -3
  12. data/app/models/metasploit/model/search/operation/boolean.rb +0 -2
  13. data/app/models/metasploit/model/search/operation/date.rb +0 -2
  14. data/app/models/metasploit/model/search/operation/group/base.rb +0 -2
  15. data/app/models/metasploit/model/search/operation/group/intersection.rb +0 -2
  16. data/app/models/metasploit/model/search/operation/group/union.rb +0 -2
  17. data/app/models/metasploit/model/search/operation/integer.rb +1 -5
  18. data/app/models/metasploit/model/search/operation/null.rb +0 -2
  19. data/app/models/metasploit/model/search/operation/set.rb +5 -2
  20. data/app/models/metasploit/model/search/operation/set/integer.rb +1 -3
  21. data/app/models/metasploit/model/search/operation/set/string.rb +1 -3
  22. data/app/models/metasploit/model/search/operation/string.rb +1 -5
  23. data/app/models/metasploit/model/search/operator/association.rb +0 -2
  24. data/app/models/metasploit/model/search/operator/attribute.rb +0 -2
  25. data/app/models/metasploit/model/search/operator/base.rb +0 -4
  26. data/app/models/metasploit/model/search/operator/delegation.rb +0 -2
  27. data/app/models/metasploit/model/search/operator/deprecated/app.rb +0 -2
  28. data/app/models/metasploit/model/search/operator/deprecated/author.rb +0 -2
  29. data/app/models/metasploit/model/search/operator/deprecated/authority.rb +0 -2
  30. data/app/models/metasploit/model/search/operator/deprecated/platform.rb +0 -2
  31. data/app/models/metasploit/model/search/operator/deprecated/ref.rb +0 -2
  32. data/app/models/metasploit/model/search/operator/deprecated/text.rb +0 -2
  33. data/app/models/metasploit/model/search/operator/group/base.rb +0 -2
  34. data/app/models/metasploit/model/search/operator/group/intersection.rb +0 -2
  35. data/app/models/metasploit/model/search/operator/group/union.rb +0 -2
  36. data/app/models/metasploit/model/search/operator/null.rb +0 -2
  37. data/app/models/metasploit/model/search/operator/single.rb +0 -2
  38. data/app/models/metasploit/model/search/query.rb +0 -3
  39. data/app/models/metasploit/model/spec/template.rb +0 -3
  40. data/app/models/metasploit/model/visitation/visitor.rb +0 -3
  41. data/lib/metasploit/model.rb +14 -8
  42. data/lib/metasploit/model/architecture.rb +320 -326
  43. data/lib/metasploit/model/association.rb +43 -46
  44. data/lib/metasploit/model/association/error.rb +29 -33
  45. data/lib/metasploit/model/association/tree.rb +119 -125
  46. data/lib/metasploit/model/author.rb +45 -51
  47. data/lib/metasploit/model/authority.rb +139 -146
  48. data/lib/metasploit/model/authority/bid.rb +0 -2
  49. data/lib/metasploit/model/authority/cve.rb +0 -2
  50. data/lib/metasploit/model/authority/msb.rb +0 -2
  51. data/lib/metasploit/model/authority/osvdb.rb +0 -2
  52. data/lib/metasploit/model/authority/pmasa.rb +0 -2
  53. data/lib/metasploit/model/authority/secunia.rb +0 -2
  54. data/lib/metasploit/model/authority/us_cert_vu.rb +0 -2
  55. data/lib/metasploit/model/authority/waraxe.rb +0 -2
  56. data/lib/metasploit/model/authority/zdi.rb +0 -2
  57. data/lib/metasploit/model/base.rb +0 -2
  58. data/lib/metasploit/model/derivation.rb +95 -99
  59. data/lib/metasploit/model/derivation/full_name.rb +16 -22
  60. data/lib/metasploit/model/email_address.rb +122 -128
  61. data/lib/metasploit/model/engine.rb +26 -21
  62. data/lib/metasploit/model/error.rb +3 -7
  63. data/lib/metasploit/model/file.rb +0 -2
  64. data/lib/metasploit/model/invalid.rb +11 -17
  65. data/lib/metasploit/model/login.rb +0 -3
  66. data/lib/metasploit/model/login/status.rb +0 -2
  67. data/lib/metasploit/model/module.rb +19 -23
  68. data/lib/metasploit/model/module/action.rb +50 -58
  69. data/lib/metasploit/model/module/ancestor.rb +456 -465
  70. data/lib/metasploit/model/module/ancestor/spec.rb +3 -2
  71. data/lib/metasploit/model/module/architecture.rb +27 -35
  72. data/lib/metasploit/model/module/author.rb +38 -47
  73. data/lib/metasploit/model/module/class.rb +358 -366
  74. data/lib/metasploit/model/module/class/spec.rb +3 -2
  75. data/lib/metasploit/model/module/handler.rb +28 -34
  76. data/lib/metasploit/model/module/instance.rb +586 -596
  77. data/lib/metasploit/model/module/instance/spec.rb +3 -2
  78. data/lib/metasploit/model/module/path.rb +157 -166
  79. data/lib/metasploit/model/module/platform.rb +25 -33
  80. data/lib/metasploit/model/module/rank.rb +71 -79
  81. data/lib/metasploit/model/module/reference.rb +25 -33
  82. data/lib/metasploit/model/module/stance.rb +15 -21
  83. data/lib/metasploit/model/module/target.rb +76 -84
  84. data/lib/metasploit/model/module/target/architecture.rb +27 -37
  85. data/lib/metasploit/model/module/target/platform.rb +27 -37
  86. data/lib/metasploit/model/module/type.rb +35 -41
  87. data/lib/metasploit/model/nilify_blanks.rb +39 -43
  88. data/lib/metasploit/model/platform.rb +231 -237
  89. data/lib/metasploit/model/real_pathname.rb +12 -16
  90. data/lib/metasploit/model/realm.rb +0 -2
  91. data/lib/metasploit/model/realm/key.rb +0 -2
  92. data/lib/metasploit/model/reference.rb +102 -108
  93. data/lib/metasploit/model/search.rb +94 -97
  94. data/lib/metasploit/model/search/association.rb +163 -169
  95. data/lib/metasploit/model/search/attribute.rb +131 -139
  96. data/lib/metasploit/model/search/group.rb +5 -2
  97. data/lib/metasploit/model/search/operation.rb +32 -29
  98. data/lib/metasploit/model/search/operation/group.rb +5 -2
  99. data/lib/metasploit/model/search/operation/value.rb +7 -0
  100. data/lib/metasploit/model/search/operation/{integer/value.rb → value/integer.rb} +1 -1
  101. data/lib/metasploit/model/search/operation/{string/value.rb → value/string.rb} +1 -1
  102. data/lib/metasploit/model/search/operator.rb +65 -65
  103. data/lib/metasploit/model/search/operator/deprecated.rb +8 -2
  104. data/lib/metasploit/model/search/operator/group.rb +5 -2
  105. data/lib/metasploit/model/search/operator/help.rb +71 -79
  106. data/lib/metasploit/model/search/with.rb +72 -78
  107. data/lib/metasploit/model/spec.rb +133 -136
  108. data/lib/metasploit/model/spec/error.rb +3 -9
  109. data/lib/metasploit/model/spec/i18n_exception_handler.rb +0 -2
  110. data/lib/metasploit/model/spec/pathname_collision.rb +19 -27
  111. data/lib/metasploit/model/spec/template/write.rb +0 -2
  112. data/lib/metasploit/model/spec/temporary_pathname.rb +47 -56
  113. data/lib/metasploit/model/translation.rb +0 -2
  114. data/lib/metasploit/model/version.rb +1 -1
  115. data/lib/metasploit/model/visitation.rb +7 -10
  116. data/lib/metasploit/model/visitation/visit.rb +79 -85
  117. data/metasploit-model.gemspec +1 -1
  118. data/spec/app/models/metasploit/model/search/operation/integer_spec.rb +1 -1
  119. data/spec/app/models/metasploit/model/search/operation/set/integer_spec.rb +1 -1
  120. data/spec/app/models/metasploit/model/search/operation/set/string_spec.rb +1 -1
  121. data/spec/app/models/metasploit/model/search/operation/string_spec.rb +1 -1
  122. data/spec/dummy/config/application.rb +1 -0
  123. data/spec/lib/metasploit/model/search/operation/{integer/value_spec.rb → value/integer_spec.rb} +2 -2
  124. data/spec/lib/metasploit/model/search/operation/{string/value_spec.rb → value/string_spec.rb} +2 -2
  125. data/spec/support/shared/examples/metasploit/model/search/operation/{integer/value.rb → value/integer.rb} +2 -2
  126. data/spec/support/shared/examples/metasploit/model/search/operation/{string/value.rb → value/string.rb} +2 -2
  127. metadata +16 -13
@@ -1,40 +1,32 @@
1
- require 'metasploit/model/translation'
1
+ # Joins {Metasploit::Model::Module::Instance} and {Metasploit::Model::Reference}.
2
+ module Metasploit::Model::Module::Reference
3
+ extend ActiveModel::Naming
4
+ extend ActiveSupport::Concern
2
5
 
3
- module Metasploit
4
- module Model
5
- module Module
6
- # Joins {Metasploit::Model::Module::Instance} and {Metasploit::Model::Reference}.
7
- module Reference
8
- extend ActiveModel::Naming
9
- extend ActiveSupport::Concern
6
+ include Metasploit::Model::Translation
10
7
 
11
- include Metasploit::Model::Translation
8
+ included do
9
+ include ActiveModel::Validations
12
10
 
13
- included do
14
- include ActiveModel::Validations
11
+ #
12
+ # Validations
13
+ #
15
14
 
16
- #
17
- # Validations
18
- #
19
-
20
- validates :module_instance, :presence => true
21
- validates :reference, :presence => true
22
- end
15
+ validates :module_instance, :presence => true
16
+ validates :reference, :presence => true
17
+ end
23
18
 
24
- #
25
- # Associations
26
- #
19
+ #
20
+ # Associations
21
+ #
27
22
 
28
- # @!attribute [rw] module_instance
29
- # {Metasploit::Model::Module::Instance Module} with {#reference}.
30
- #
31
- # @return [Metasploit::Model::Module::Instance]
23
+ # @!attribute [rw] module_instance
24
+ # {Metasploit::Model::Module::Instance Module} with {#reference}.
25
+ #
26
+ # @return [Metasploit::Model::Module::Instance]
32
27
 
33
- # @!attribute [rw] reference
34
- # {Metasploit::Model::Reference reference} to exploit or proof-of-concept (PoC) code for {#module_instance}.
35
- #
36
- # @return [Metasploit::Model::Reference]
37
- end
38
- end
39
- end
40
- end
28
+ # @!attribute [rw] reference
29
+ # {Metasploit::Model::Reference reference} to exploit or proof-of-concept (PoC) code for {#module_instance}.
30
+ #
31
+ # @return [Metasploit::Model::Reference]
32
+ end
@@ -1,22 +1,16 @@
1
- module Metasploit
2
- module Model
3
- module Module
4
- # The types of stances a module can take, such as {PASSIVE} or {AGGRESSIVE}. Stances indicate whether or not the
5
- # module triggers the vulnerability without waiting for one or more conditions to be met ({AGGRESSIVE}) or whether
6
- # it must wait for certain conditions to be satisfied before the exploit can be initiated ({PASSIVE}).
7
- module Stance
8
- # The module does actively tries to trigger a vulnerability.
9
- AGGRESSIVE = 'aggressive'
10
- # The module doesn't actively attack and waits for interaction from the client or other entity before attempting
11
- # to trigger a vulnerability
12
- PASSIVE = 'passive'
1
+ # The types of stances a module can take, such as {PASSIVE} or {AGGRESSIVE}. Stances indicate whether or not the
2
+ # module triggers the vulnerability without waiting for one or more conditions to be met ({AGGRESSIVE}) or whether
3
+ # it must wait for certain conditions to be satisfied before the exploit can be initiated ({PASSIVE}).
4
+ module Metasploit::Model::Module::Stance
5
+ # The module does actively tries to trigger a vulnerability.
6
+ AGGRESSIVE = 'aggressive'
7
+ # The module doesn't actively attack and waits for interaction from the client or other entity before attempting
8
+ # to trigger a vulnerability
9
+ PASSIVE = 'passive'
13
10
 
14
- # All stances.
15
- ALL = [
16
- AGGRESSIVE,
17
- PASSIVE
18
- ]
19
- end
20
- end
21
- end
22
- end
11
+ # All stances.
12
+ ALL = [
13
+ AGGRESSIVE,
14
+ PASSIVE
15
+ ]
16
+ end
@@ -1,86 +1,78 @@
1
- require 'metasploit/model/translation'
2
-
3
- module Metasploit
4
- module Model
5
- module Module
6
- # Code shared between `Mdm::Module::Target` and `Metasploit::Framework::Module::Target`.
7
- module Target
8
- extend ActiveModel::Naming
9
- extend ActiveSupport::Autoload
10
- extend ActiveSupport::Concern
11
-
12
- include Metasploit::Model::Translation
13
-
14
- autoload :Architecture
15
- autoload :Platform
16
-
17
- included do
18
- include ActiveModel::MassAssignmentSecurity
19
- include ActiveModel::Validations
20
- include Metasploit::Model::Search
21
-
22
- #
23
- # Mass Assignment Security
24
- #
25
-
26
- attr_accessible :name
27
-
28
- #
29
- # Search Attributes
30
- #
31
-
32
- search_attribute :name, :type => :string
33
-
34
- #
35
- # Validators
36
- #
37
-
38
- validates :module_instance, :presence => true
39
- validates :name, :presence => true
40
- validates :target_architectures, presence: true
41
- validates :target_platforms, presence: true
42
- end
43
-
44
- #
45
- # Associations
46
- #
47
-
48
- # @!attribute [r] architectures
49
- # Architectures that this target supports, either by being declared specifically for this target or because
50
- # this target did not override architectures and so inheritted the architecture set from the class.
51
- #
52
- # @return [Array<Metasploit::Model::Architecture>]
53
-
54
- # @!attribute [rw] module_instance
55
- # Module where this target was declared.
56
- #
57
- # @return [Metasploit::Model::Module::Instance]
58
-
59
- # @!attribute [r] platforms
60
- # Platforms that this target supports, either by being declared specifically for this target or because this
61
- # target did not override platforms and so inheritted the platform set from the class.
62
- #
63
- # @return [Array<Metasploit::Model::Platform>]
64
-
65
- # @!attribute [rw] target_architectures
66
- # Joins this target to its {#architectures}
67
- #
68
- # @return [Array<Metasploit::Model::Module::Target::Architecture]
69
-
70
- # @!attribute [rw] target_platforms
71
- # Joins this target to its {#platforms}
72
- #
73
- # @return [Array<Metasploit::Model::Module::Target::Platform>]
74
-
75
- #
76
- # Attributes
77
- #
78
-
79
- # @!attribute [rw] name
80
- # The name of this target.
81
- #
82
- # @return [String]
83
- end
84
- end
1
+ # Code shared between `Mdm::Module::Target` and `Metasploit::Framework::Module::Target`.
2
+ module Metasploit::Model::Module::Target
3
+ extend ActiveModel::Naming
4
+ extend ActiveSupport::Autoload
5
+ extend ActiveSupport::Concern
6
+
7
+ include Metasploit::Model::Translation
8
+
9
+ autoload :Architecture
10
+ autoload :Platform
11
+
12
+ included do
13
+ include ActiveModel::MassAssignmentSecurity
14
+ include ActiveModel::Validations
15
+ include Metasploit::Model::Search
16
+
17
+ #
18
+ # Mass Assignment Security
19
+ #
20
+
21
+ attr_accessible :name
22
+
23
+ #
24
+ # Search Attributes
25
+ #
26
+
27
+ search_attribute :name, :type => :string
28
+
29
+ #
30
+ # Validators
31
+ #
32
+
33
+ validates :module_instance, :presence => true
34
+ validates :name, :presence => true
35
+ validates :target_architectures, presence: true
36
+ validates :target_platforms, presence: true
85
37
  end
38
+
39
+ #
40
+ # Associations
41
+ #
42
+
43
+ # @!attribute [r] architectures
44
+ # Architectures that this target supports, either by being declared specifically for this target or because
45
+ # this target did not override architectures and so inheritted the architecture set from the class.
46
+ #
47
+ # @return [Array<Metasploit::Model::Architecture>]
48
+
49
+ # @!attribute [rw] module_instance
50
+ # Module where this target was declared.
51
+ #
52
+ # @return [Metasploit::Model::Module::Instance]
53
+
54
+ # @!attribute [r] platforms
55
+ # Platforms that this target supports, either by being declared specifically for this target or because this
56
+ # target did not override platforms and so inheritted the platform set from the class.
57
+ #
58
+ # @return [Array<Metasploit::Model::Platform>]
59
+
60
+ # @!attribute [rw] target_architectures
61
+ # Joins this target to its {#architectures}
62
+ #
63
+ # @return [Array<Metasploit::Model::Module::Target::Architecture]
64
+
65
+ # @!attribute [rw] target_platforms
66
+ # Joins this target to its {#platforms}
67
+ #
68
+ # @return [Array<Metasploit::Model::Module::Target::Platform>]
69
+
70
+ #
71
+ # Attributes
72
+ #
73
+
74
+ # @!attribute [rw] name
75
+ # The name of this target.
76
+ #
77
+ # @return [String]
86
78
  end
@@ -1,44 +1,34 @@
1
- require 'metasploit/model/translation'
1
+ # Model that joins {Metasploit::Model::Architecture} and {Metasploit::Model::Module::Target}.
2
+ module Metasploit::Model::Module::Target::Architecture
3
+ extend ActiveModel::Naming
4
+ extend ActiveSupport::Concern
2
5
 
3
- module Metasploit
4
- module Model
5
- module Module
6
- module Target
7
- # Model that joins {Metasploit::Model::Architecture} and {Metasploit::Model::Module::Target}.
8
- module Architecture
9
- extend ActiveModel::Naming
10
- extend ActiveSupport::Concern
6
+ include Metasploit::Model::Translation
11
7
 
12
- include Metasploit::Model::Translation
8
+ included do
9
+ include ActiveModel::Validations
13
10
 
14
- included do
15
- include ActiveModel::Validations
11
+ #
12
+ # Validations
13
+ #
16
14
 
17
- #
18
- # Validations
19
- #
20
-
21
- validates :architecture,
22
- presence: true
23
- validates :module_target,
24
- presence: true
25
- end
15
+ validates :architecture,
16
+ presence: true
17
+ validates :module_target,
18
+ presence: true
19
+ end
26
20
 
27
- #
28
- # Associations
29
- #
21
+ #
22
+ # Associations
23
+ #
30
24
 
31
- # @!attribute [rw] architecture
32
- # The architecture supported by the {#module_target}.
33
- #
34
- # @return [Metasploit::Model::Architecture]
25
+ # @!attribute [rw] architecture
26
+ # The architecture supported by the {#module_target}.
27
+ #
28
+ # @return [Metasploit::Model::Architecture]
35
29
 
36
- # @!attribute [rw] module_target
37
- # The module target that supports {#architecture}.
38
- #
39
- # @return [Metasploit::Model::Module::Target]
40
- end
41
- end
42
- end
43
- end
44
- end
30
+ # @!attribute [rw] module_target
31
+ # The module target that supports {#architecture}.
32
+ #
33
+ # @return [Metasploit::Model::Module::Target]
34
+ end
@@ -1,44 +1,34 @@
1
- require 'metasploit/model/translation'
1
+ # Model that joins {Metasploit::Model::Platform} and {Metasploit::Model::Module::Target}.
2
+ module Metasploit::Model::Module::Target::Platform
3
+ extend ActiveModel::Naming
4
+ extend ActiveSupport::Concern
2
5
 
3
- module Metasploit
4
- module Model
5
- module Module
6
- module Target
7
- # Model that joins {Metasploit::Model::Platform} and {Metasploit::Model::Module::Target}.
8
- module Platform
9
- extend ActiveModel::Naming
10
- extend ActiveSupport::Concern
6
+ include Metasploit::Model::Translation
11
7
 
12
- include Metasploit::Model::Translation
8
+ included do
9
+ include ActiveModel::Validations
13
10
 
14
- included do
15
- include ActiveModel::Validations
11
+ #
12
+ # Validations
13
+ #
16
14
 
17
- #
18
- # Validations
19
- #
20
-
21
- validates :module_target,
22
- presence: true
23
- validates :platform,
24
- presence: true
25
- end
15
+ validates :module_target,
16
+ presence: true
17
+ validates :platform,
18
+ presence: true
19
+ end
26
20
 
27
- #
28
- # Associations
29
- #
21
+ #
22
+ # Associations
23
+ #
30
24
 
31
- # @!attribute [rw] module_target
32
- # The module target that supports {#platform}.
33
- #
34
- # @return [Metasploit::Model::Module::Target]
25
+ # @!attribute [rw] module_target
26
+ # The module target that supports {#platform}.
27
+ #
28
+ # @return [Metasploit::Model::Module::Target]
35
29
 
36
- # @!attribute [rw] platform
37
- # The platform supported by the {#module_target}.
38
- #
39
- # @return [Metasploit::Model::Platform]
40
- end
41
- end
42
- end
43
- end
44
- end
30
+ # @!attribute [rw] platform
31
+ # The platform supported by the {#module_target}.
32
+ #
33
+ # @return [Metasploit::Model::Platform]
34
+ end
@@ -1,44 +1,38 @@
1
- module Metasploit
2
- module Model
3
- module Module
4
- # Defines constants for {Metasploit::Model::Module} types as used in {Metasploit::Model::Module::Ancestor}.
5
- module Type
6
- #
7
- # CONSTANTS
8
- #
1
+ # Defines constants for {Metasploit::Model::Module} types as used in {Metasploit::Model::Module::Ancestor}.
2
+ module Metasploit::Model::Module::Type
3
+ #
4
+ # CONSTANTS
5
+ #
9
6
 
10
- # Symbolizes any module type is allowed.
11
- ANY = '_any_'
12
- # Auxiliary modules
13
- AUX = 'auxiliary'
14
- # Encoder modules
15
- ENCODER = 'encoder'
16
- # Exploit modules
17
- EXPLOIT = 'exploit'
18
- # No operation modules
19
- NOP = 'nop'
20
- # Payload modules
21
- PAYLOAD = 'payload'
22
- # Post-exploitation modules
23
- POST = 'post'
7
+ # Symbolizes any module type is allowed.
8
+ ANY = '_any_'
9
+ # Auxiliary modules
10
+ AUX = 'auxiliary'
11
+ # Encoder modules
12
+ ENCODER = 'encoder'
13
+ # Exploit modules
14
+ EXPLOIT = 'exploit'
15
+ # No operation modules
16
+ NOP = 'nop'
17
+ # Payload modules
18
+ PAYLOAD = 'payload'
19
+ # Post-exploitation modules
20
+ POST = 'post'
24
21
 
25
- # Array<String> of all supported module types (except {ANY} since that's a symbolic type)
26
- ALL = [
27
- AUX,
28
- ENCODER,
29
- EXPLOIT,
30
- NOP,
31
- PAYLOAD,
32
- POST
33
- ]
22
+ # Array<String> of all supported module types (except {ANY} since that's a symbolic type)
23
+ ALL = [
24
+ AUX,
25
+ ENCODER,
26
+ EXPLOIT,
27
+ NOP,
28
+ PAYLOAD,
29
+ POST
30
+ ]
34
31
 
35
- # Array<String> of all module types that aren't {PAYLOAD} because {PAYLOAD}
36
- # {Metasploit::Model::Module::Ancestor#contents} define `Modules` instead of `Classes` and so need to be loaded
37
- # differently.
38
- NON_PAYLOAD = ALL.reject { |module_type|
39
- module_type == PAYLOAD
40
- }
41
- end
42
- end
43
- end
44
- end
32
+ # Array<String> of all module types that aren't {PAYLOAD} because {PAYLOAD}
33
+ # {Metasploit::Model::Module::Ancestor#contents} define `Modules` instead of `Classes` and so need to be loaded
34
+ # differently.
35
+ NON_PAYLOAD = ALL.reject { |module_type|
36
+ module_type == PAYLOAD
37
+ }
38
+ end