metasploit_data_models 3.0.8 → 4.0.2

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 (219) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +1 -3
  3. data.tar.gz.sig +1 -1
  4. data/.gitignore +1 -1
  5. data/.travis.yml +1 -1
  6. data/Gemfile +6 -4
  7. data/Rakefile +1 -1
  8. data/app/models/mdm/api_key.rb +2 -2
  9. data/app/models/mdm/async_callback.rb +64 -0
  10. data/app/models/mdm/client.rb +1 -1
  11. data/app/models/mdm/cred.rb +1 -1
  12. data/app/models/mdm/event.rb +1 -1
  13. data/app/models/mdm/exploit_attempt.rb +1 -1
  14. data/app/models/mdm/exploited_host.rb +1 -1
  15. data/app/models/mdm/host.rb +2 -2
  16. data/app/models/mdm/host_detail.rb +2 -2
  17. data/app/models/mdm/host_tag.rb +1 -1
  18. data/app/models/mdm/listener.rb +1 -1
  19. data/app/models/mdm/loot.rb +1 -1
  20. data/app/models/mdm/macro.rb +1 -1
  21. data/app/models/mdm/mod_ref.rb +1 -1
  22. data/app/models/mdm/module/action.rb +1 -1
  23. data/app/models/mdm/module/arch.rb +1 -1
  24. data/app/models/mdm/module/author.rb +1 -1
  25. data/app/models/mdm/module/detail.rb +1 -1
  26. data/app/models/mdm/module/mixin.rb +1 -1
  27. data/app/models/mdm/module/platform.rb +1 -1
  28. data/app/models/mdm/module/ref.rb +1 -1
  29. data/app/models/mdm/module/target.rb +1 -1
  30. data/app/models/mdm/nexpose_console.rb +1 -1
  31. data/app/models/mdm/note.rb +2 -2
  32. data/app/models/mdm/payload.rb +1 -16
  33. data/app/models/mdm/profile.rb +1 -1
  34. data/app/models/mdm/ref.rb +1 -1
  35. data/app/models/mdm/route.rb +1 -1
  36. data/app/models/mdm/service.rb +2 -2
  37. data/app/models/mdm/session.rb +1 -1
  38. data/app/models/mdm/session_event.rb +1 -1
  39. data/app/models/mdm/tag.rb +1 -1
  40. data/app/models/mdm/task.rb +1 -1
  41. data/app/models/mdm/task_cred.rb +1 -1
  42. data/app/models/mdm/task_host.rb +1 -1
  43. data/app/models/mdm/task_service.rb +1 -1
  44. data/app/models/mdm/task_session.rb +1 -1
  45. data/app/models/mdm/user.rb +2 -2
  46. data/app/models/mdm/vuln.rb +2 -2
  47. data/app/models/mdm/vuln_attempt.rb +1 -1
  48. data/app/models/mdm/vuln_detail.rb +1 -1
  49. data/app/models/mdm/vuln_ref.rb +1 -1
  50. data/app/models/mdm/web_form.rb +1 -1
  51. data/app/models/mdm/web_page.rb +1 -1
  52. data/app/models/mdm/web_site.rb +1 -1
  53. data/app/models/mdm/web_vuln.rb +1 -1
  54. data/app/models/mdm/wmap_request.rb +1 -1
  55. data/app/models/mdm/wmap_target.rb +1 -1
  56. data/app/models/mdm/workspace.rb +6 -9
  57. data/app/models/metasploit_data_models/automatic_exploitation/match.rb +1 -1
  58. data/app/models/metasploit_data_models/automatic_exploitation/match_result.rb +1 -1
  59. data/app/models/metasploit_data_models/automatic_exploitation/match_set.rb +1 -1
  60. data/app/models/metasploit_data_models/automatic_exploitation/run.rb +2 -2
  61. data/app/models/metasploit_data_models/module_run.rb +1 -1
  62. data/app/validators/ip_format_validator.rb +1 -1
  63. data/app/validators/parameters_validator.rb +7 -7
  64. data/bin/rails +14 -0
  65. data/config/initializers/arel_helper.rb +2 -2
  66. data/config/initializers/ipaddr.rb +11 -6
  67. data/db/migrate/000_create_tables.rb +1 -1
  68. data/db/migrate/001_add_wmap_tables.rb +1 -1
  69. data/db/migrate/002_add_workspaces.rb +1 -1
  70. data/db/migrate/003_move_notes.rb +1 -1
  71. data/db/migrate/004_add_events_table.rb +1 -1
  72. data/db/migrate/005_expand_info.rb +1 -1
  73. data/db/migrate/006_add_timestamps.rb +1 -1
  74. data/db/migrate/007_add_loots.rb +1 -1
  75. data/db/migrate/008_create_users.rb +1 -1
  76. data/db/migrate/009_add_loots_ctype.rb +1 -1
  77. data/db/migrate/010_add_alert_fields.rb +1 -1
  78. data/db/migrate/011_add_reports.rb +1 -1
  79. data/db/migrate/012_add_tasks.rb +1 -1
  80. data/db/migrate/013_add_tasks_result.rb +1 -1
  81. data/db/migrate/014_add_loots_fields.rb +1 -1
  82. data/db/migrate/015_rename_user.rb +1 -1
  83. data/db/migrate/016_add_host_purpose.rb +1 -1
  84. data/db/migrate/017_expand_info2.rb +1 -1
  85. data/db/migrate/018_add_workspace_user_info.rb +1 -1
  86. data/db/migrate/019_add_workspace_desc.rb +1 -1
  87. data/db/migrate/020_add_user_preferences.rb +1 -1
  88. data/db/migrate/021_standardize_info_and_data.rb +1 -1
  89. data/db/migrate/022_enlarge_event_info.rb +1 -1
  90. data/db/migrate/023_add_report_downloaded_at.rb +1 -1
  91. data/db/migrate/024_convert_service_info_to_text.rb +1 -1
  92. data/db/migrate/025_add_user_admin.rb +1 -1
  93. data/db/migrate/026_add_creds_table.rb +1 -1
  94. data/db/migrate/20100819123300_migrate_cred_data.rb +1 -1
  95. data/db/migrate/20100824151500_add_exploited_table.rb +1 -1
  96. data/db/migrate/20100908001428_add_owner_to_workspaces.rb +1 -1
  97. data/db/migrate/20100911122000_add_report_templates.rb +1 -1
  98. data/db/migrate/20100916151530_require_admin_flag.rb +1 -1
  99. data/db/migrate/20100916175000_add_campaigns_and_templates.rb +1 -1
  100. data/db/migrate/20100920012100_add_generate_exe_column.rb +1 -1
  101. data/db/migrate/20100926214000_add_template_prefs.rb +1 -1
  102. data/db/migrate/20101001000000_add_web_tables.rb +1 -1
  103. data/db/migrate/20101002000000_add_query.rb +1 -1
  104. data/db/migrate/20101007000000_add_vuln_info.rb +1 -1
  105. data/db/migrate/20101008111800_add_clients_to_campaigns.rb +1 -1
  106. data/db/migrate/20101009023300_add_campaign_attachments.rb +1 -1
  107. data/db/migrate/20101104135100_add_imported_creds.rb +1 -1
  108. data/db/migrate/20101203000000_fix_web_tables.rb +1 -1
  109. data/db/migrate/20101203000001_expand_host_comment.rb +1 -1
  110. data/db/migrate/20101206212033_add_limit_to_network_to_workspaces.rb +1 -1
  111. data/db/migrate/20110112154300_add_module_uuid_to_tasks.rb +1 -1
  112. data/db/migrate/20110204112800_add_host_tags.rb +1 -1
  113. data/db/migrate/20110317144932_add_session_table.rb +4 -4
  114. data/db/migrate/20110414180600_add_local_id_to_session_table.rb +1 -1
  115. data/db/migrate/20110415175705_add_routes_table.rb +1 -1
  116. data/db/migrate/20110422000000_convert_binary.rb +3 -3
  117. data/db/migrate/20110425095900_add_last_seen_to_sessions.rb +1 -1
  118. data/db/migrate/20110513143900_track_successful_exploits.rb +3 -3
  119. data/db/migrate/20110517160800_rename_and_prune_nessus_vulns.rb +2 -2
  120. data/db/migrate/20110527000000_add_task_id_to_reports_table.rb +1 -1
  121. data/db/migrate/20110527000001_add_api_keys_table.rb +1 -1
  122. data/db/migrate/20110606000001_add_macros_table.rb +1 -1
  123. data/db/migrate/20110622000000_add_settings_to_tasks_table.rb +1 -1
  124. data/db/migrate/20110624000001_add_listeners_table.rb +1 -1
  125. data/db/migrate/20110625000001_add_macro_to_listeners_table.rb +1 -1
  126. data/db/migrate/20110630000001_add_nexpose_consoles_table.rb +1 -1
  127. data/db/migrate/20110630000002_add_name_to_nexpose_consoles_table.rb +1 -1
  128. data/db/migrate/20110717000001_add_profiles_table.rb +1 -1
  129. data/db/migrate/20110727163801_expand_cred_ptype_column.rb +1 -1
  130. data/db/migrate/20110730000001_add_initial_indexes.rb +1 -1
  131. data/db/migrate/20110812000001_prune_indexes.rb +1 -1
  132. data/db/migrate/20110922000000_expand_notes.rb +1 -1
  133. data/db/migrate/20110928101300_add_mod_ref_table.rb +1 -1
  134. data/db/migrate/20111011110000_add_display_name_to_reports_table.rb +2 -2
  135. data/db/migrate/20111203000000_inet_columns.rb +1 -1
  136. data/db/migrate/20111204000000_more_inet_columns.rb +1 -1
  137. data/db/migrate/20111210000000_add_scope_to_hosts.rb +1 -1
  138. data/db/migrate/20120126110000_add_virtual_host_to_hosts.rb +1 -1
  139. data/db/migrate/20120411173220_rename_workspace_members.rb +1 -1
  140. data/db/migrate/20120601152442_add_counter_caches_to_hosts.rb +2 -2
  141. data/db/migrate/20120625000000_add_vuln_details.rb +1 -1
  142. data/db/migrate/20120625000001_add_host_details.rb +1 -1
  143. data/db/migrate/20120625000002_expand_details.rb +1 -1
  144. data/db/migrate/20120625000003_expand_details2.rb +1 -1
  145. data/db/migrate/20120625000004_add_vuln_attempts.rb +1 -1
  146. data/db/migrate/20120625000005_add_vuln_and_host_counter_caches.rb +1 -1
  147. data/db/migrate/20120625000006_add_module_details.rb +1 -1
  148. data/db/migrate/20120625000007_add_exploit_attempts.rb +1 -1
  149. data/db/migrate/20120625000008_add_fail_message.rb +1 -1
  150. data/db/migrate/20120718202805_add_owner_and_payload_to_web_vulns.rb +1 -1
  151. data/db/migrate/20130412154159_change_foreign_key_in_module_actions.rb +1 -1
  152. data/db/migrate/20130412171844_change_foreign_key_in_module_archs.rb +1 -1
  153. data/db/migrate/20130412173121_change_foreign_key_in_module_authors.rb +1 -1
  154. data/db/migrate/20130412173640_change_foreign_key_in_module_mixins.rb +1 -1
  155. data/db/migrate/20130412174254_change_foreign_key_in_module_platforms.rb +1 -1
  156. data/db/migrate/20130412174719_change_foreign_key_in_module_refs.rb +1 -1
  157. data/db/migrate/20130412175040_change_foreign_key_in_module_targets.rb +1 -1
  158. data/db/migrate/20130423211152_add_creds_counter_cache.rb +1 -1
  159. data/db/migrate/20130430162145_enforce_address_uniqueness_in_workspace_in_hosts.rb +6 -6
  160. data/db/migrate/20130510021637_remove_campaigns.rb +1 -1
  161. data/db/migrate/20130515164311_change_web_vulns_confidence_to_integer.rb +1 -1
  162. data/db/migrate/20130515172727_valid_mdm_web_vuln_params.rb +1 -1
  163. data/db/migrate/20130516204810_making_vulns_refs_a_real_ar_model.rb +2 -2
  164. data/db/migrate/20130522001343_create_task_creds.rb +1 -1
  165. data/db/migrate/20130522032517_create_task_hosts.rb +1 -1
  166. data/db/migrate/20130522041110_create_task_services.rb +1 -1
  167. data/db/migrate/20130525015035_remove_campaign_id_from_clients.rb +1 -1
  168. data/db/migrate/20130525212420_drop_table_imported_creds.rb +1 -1
  169. data/db/migrate/20130531144949_making_host_tags_a_real_ar_model.rb +1 -1
  170. data/db/migrate/20130604145732_create_task_sessions.rb +1 -1
  171. data/db/migrate/20130717150737_remove_pname_validation.rb +1 -1
  172. data/db/migrate/20131002004641_create_automatic_exploitation_matches.rb +1 -1
  173. data/db/migrate/20131002164449_create_automatic_exploitation_match_sets.rb +1 -1
  174. data/db/migrate/20131008213344_create_automatic_exploitation_runs.rb +1 -1
  175. data/db/migrate/20131011184338_module_detail_on_automatic_exploitation_match.rb +1 -1
  176. data/db/migrate/20131017150735_create_automatic_exploitation_match_results.rb +1 -1
  177. data/db/migrate/20131021185657_make_match_polymorphic.rb +1 -1
  178. data/db/migrate/20140905031549_add_detected_arch_to_host.rb +1 -1
  179. data/db/migrate/20150112203945_remove_duplicate_services.rb +1 -1
  180. data/db/migrate/20150205192745_drop_service_uniqueness_index.rb +1 -1
  181. data/db/migrate/20150209195939_add_vuln_id_to_note.rb +1 -1
  182. data/db/migrate/20150212214222_remove_duplicate_services2.rb +1 -1
  183. data/db/migrate/20150219173821_create_module_runs.rb +1 -1
  184. data/db/migrate/20150219215039_add_module_run_to_session.rb +1 -1
  185. data/db/migrate/20150226151459_add_module_run_fk_to_loot.rb +1 -1
  186. data/db/migrate/20150312155312_add_module_full_name_to_match.rb +1 -1
  187. data/db/migrate/20150317145455_rename_module_indices.rb +2 -2
  188. data/db/migrate/20150326183742_add_missing_ae_indices.rb +1 -1
  189. data/db/migrate/20150421211719_rename_automatic_exploitation_index.rb +3 -3
  190. data/db/migrate/20150514182921_add_origin_to_mdm_vuln.rb +1 -1
  191. data/db/migrate/20160415153312_remove_not_null_from_web_vuln_p_arams.rb +1 -1
  192. data/db/migrate/20161004165612_add_fingerprinted_to_workspace.rb +1 -1
  193. data/db/migrate/20161227212223_add_os_family_to_hosts.rb +1 -1
  194. data/db/migrate/20180904120211_create_payloads.rb +1 -1
  195. data/db/migrate/20190308134512_create_async_callbacks.rb +14 -0
  196. data/db/migrate/20190507120211_remove_payload_workspaces.rb +5 -0
  197. data/lib/mdm.rb +1 -0
  198. data/lib/metasploit_data_models.rb +0 -1
  199. data/lib/metasploit_data_models/automatic_exploitation.rb +1 -1
  200. data/lib/metasploit_data_models/base64_serializer.rb +1 -1
  201. data/lib/metasploit_data_models/change_required_columns_to_null_false.rb +2 -2
  202. data/lib/metasploit_data_models/engine.rb +1 -1
  203. data/lib/metasploit_data_models/version.rb +1 -1
  204. data/metasploit_data_models.gemspec +4 -8
  205. data/spec/app/models/mdm/exploit_attempt_spec.rb +2 -2
  206. data/spec/app/models/mdm/host_detail_spec.rb +1 -1
  207. data/spec/app/models/mdm/host_spec.rb +27 -27
  208. data/spec/app/models/mdm/module/detail_spec.rb +18 -18
  209. data/spec/app/models/mdm/service_spec.rb +1 -0
  210. data/spec/app/models/mdm/vuln_attempt_spec.rb +1 -1
  211. data/spec/app/models/mdm/vuln_detail_spec.rb +1 -1
  212. data/spec/app/models/mdm/vuln_spec.rb +1 -1
  213. data/spec/app/models/metasploit_data_models/search/visitor/joins_spec.rb +4 -4
  214. data/spec/dummy/app/assets/config/manifest.js +1 -0
  215. data/spec/dummy/app/models/application_record.rb +3 -0
  216. data/spec/dummy/db/structure.sql +213 -329
  217. metadata +92 -98
  218. metadata.gz.sig +0 -0
  219. data/spec/dummy/config/initializers/secret_token.rb +0 -7
@@ -1,6 +1,6 @@
1
1
  # Probably temporary, a spot to stash module names and their associated refs
2
2
  # Don't count on it being populated at any given moment.
3
- class AddModRefTable < ActiveRecord::Migration
3
+ class AddModRefTable < ActiveRecord::Migration[4.2]
4
4
 
5
5
  def self.up
6
6
  create_table :mod_refs do |t|
@@ -1,6 +1,6 @@
1
- class AddDisplayNameToReportsTable < ActiveRecord::Migration
1
+ class AddDisplayNameToReportsTable < ActiveRecord::Migration[4.2]
2
2
 
3
- class Report < ActiveRecord::Base
3
+ class Report < ApplicationRecord
4
4
  end
5
5
 
6
6
  def self.up
@@ -1,4 +1,4 @@
1
- class InetColumns < ActiveRecord::Migration
1
+ class InetColumns < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  change_column :hosts, :address, 'INET using address::INET'
@@ -1,4 +1,4 @@
1
- class MoreInetColumns < ActiveRecord::Migration
1
+ class MoreInetColumns < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  change_column :wmap_requests, :address, 'INET using address::INET'
@@ -1,4 +1,4 @@
1
- class AddScopeToHosts < ActiveRecord::Migration
1
+ class AddScopeToHosts < ActiveRecord::Migration[4.2]
2
2
  def self.up
3
3
  add_column :hosts, :scope, :text
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddVirtualHostToHosts < ActiveRecord::Migration
1
+ class AddVirtualHostToHosts < ActiveRecord::Migration[4.2]
2
2
  def self.up
3
3
  add_column :hosts, :virtual_host, :text
4
4
  end
@@ -1,4 +1,4 @@
1
- class RenameWorkspaceMembers < ActiveRecord::Migration
1
+ class RenameWorkspaceMembers < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  rename_table :project_members, :workspace_members
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddCounterCachesToHosts < ActiveRecord::Migration
1
+ class AddCounterCachesToHosts < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :hosts, :note_count, :integer, :default => 0
@@ -18,4 +18,4 @@ class AddCounterCachesToHosts < ActiveRecord::Migration
18
18
  remove_column :hosts, :vuln_count
19
19
  remove_column :hosts, :service_count
20
20
  end
21
- end
21
+ end
@@ -1,4 +1,4 @@
1
- class AddVulnDetails < ActiveRecord::Migration
1
+ class AddVulnDetails < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  create_table :vuln_details do |t|
@@ -1,4 +1,4 @@
1
- class AddHostDetails < ActiveRecord::Migration
1
+ class AddHostDetails < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  create_table :host_details do |t|
@@ -1,4 +1,4 @@
1
- class ExpandDetails < ActiveRecord::Migration
1
+ class ExpandDetails < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :vuln_details, :nx_vuln_status, :text
@@ -1,4 +1,4 @@
1
- class ExpandDetails2 < ActiveRecord::Migration
1
+ class ExpandDetails2 < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :host_details, :nx_site_name, :string
@@ -1,4 +1,4 @@
1
- class AddVulnAttempts < ActiveRecord::Migration
1
+ class AddVulnAttempts < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  create_table :vuln_attempts do |t|
@@ -1,4 +1,4 @@
1
- class AddVulnAndHostCounterCaches < ActiveRecord::Migration
1
+ class AddVulnAndHostCounterCaches < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :hosts, :host_detail_count, :integer, :default => 0
@@ -1,4 +1,4 @@
1
- class AddModuleDetails < ActiveRecord::Migration
1
+ class AddModuleDetails < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
 
@@ -1,4 +1,4 @@
1
- class AddExploitAttempts < ActiveRecord::Migration
1
+ class AddExploitAttempts < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  create_table :exploit_attempts do |t|
@@ -1,4 +1,4 @@
1
- class AddFailMessage < ActiveRecord::Migration
1
+ class AddFailMessage < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :vuln_attempts, :fail_detail, :text
@@ -1,4 +1,4 @@
1
- class AddOwnerAndPayloadToWebVulns < ActiveRecord::Migration
1
+ class AddOwnerAndPayloadToWebVulns < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def self.up
4
4
  add_column :web_vulns, :owner, :string
@@ -1,6 +1,6 @@
1
1
  # Changes `module_actions.module_detail_id` to `module_actions.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleActions < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleActions < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_archs.module_detail_id` to `module_archs.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleArchs < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleArchs < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_authors.module_detail_id` to `module_authors.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleAuthors < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleAuthors < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_mixins.module_detail_id` to `module_mixins.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleMixins < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleMixins < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_platforms.module_detail_id` to `module_platforms.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModulePlatforms < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModulePlatforms < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_refs.module_detail_id` to `module_refs.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleRefs < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleRefs < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,6 +1,6 @@
1
1
  # Changes `module_targets.module_detail_id` to `module_targets.detail_id` so that foreign key matches the conventional
2
2
  # name when `Mdm::ModuleDetail` became {Mdm::Module::Detail}.
3
- class ChangeForeignKeyInModuleTargets < ActiveRecord::Migration
3
+ class ChangeForeignKeyInModuleTargets < ActiveRecord::Migration[4.2]
4
4
  #
5
5
  # CONSTANTS
6
6
  #
@@ -1,4 +1,4 @@
1
- class AddCredsCounterCache < ActiveRecord::Migration
1
+ class AddCredsCounterCache < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  add_column :hosts, :cred_count, :integer, :default => 0
4
4
  Mdm::Host.reset_column_information
@@ -1,6 +1,6 @@
1
1
  # Changes index on address so it scoped to workspace_id and is unique to match the validation in {Mdm::Host} on
2
2
  # {Mdm::Host#address}.
3
- class EnforceAddressUniquenessInWorkspaceInHosts < ActiveRecord::Migration
3
+ class EnforceAddressUniquenessInWorkspaceInHosts < ActiveRecord::Migration[4.2]
4
4
  TABLE_NAME = :hosts
5
5
 
6
6
  # maps Table -> Association Column for models that "belong to" a Host
@@ -33,7 +33,7 @@ class EnforceAddressUniquenessInWorkspaceInHosts < ActiveRecord::Migration
33
33
  # idea what version of the code the user has checked out. So we fall back to SQL :(
34
34
  def find_and_merge_duplicate_hosts!
35
35
  # find all duplicate addresses within the same workspace currently in the db
36
- dupe_addresses_and_workspaces = ActiveRecord::Base.connection.execute(%Q{
36
+ dupe_addresses_and_workspaces = ApplicationRecord.connection.execute(%Q{
37
37
  SELECT workspace_id, address, count_addr
38
38
  FROM (
39
39
  SELECT workspace_id, address, COUNT(address) AS count_addr
@@ -49,10 +49,10 @@ class EnforceAddressUniquenessInWorkspaceInHosts < ActiveRecord::Migration
49
49
  # iterate through the duped IPs
50
50
  dupe_addresses_and_workspaces.each do |result|
51
51
  # so its come to this
52
- address = ActiveRecord::Base.connection.quote(result['address'])
52
+ address = ApplicationRecord.connection.quote(result['address'])
53
53
  workspace_id = result['workspace_id'].to_i
54
54
  # look up the duplicate Host table entries to find all IDs of the duped Hosts
55
- hosts = ActiveRecord::Base.connection.execute(%Q|
55
+ hosts = ApplicationRecord.connection.execute(%Q|
56
56
  SELECT id
57
57
  FROM hosts
58
58
  WHERE address=#{address} AND workspace_id=#{workspace_id}
@@ -65,13 +65,13 @@ class EnforceAddressUniquenessInWorkspaceInHosts < ActiveRecord::Migration
65
65
  dupe_host_ids = hosts[1..-1]
66
66
  # update associations to these duplicate Hosts
67
67
  HOST_ASSOCIATION_MAP.each do |table, column|
68
- ActiveRecord::Base.connection.execute(%Q|
68
+ ApplicationRecord.connection.execute(%Q|
69
69
  UPDATE #{table} SET #{column}=#{first_host_id}
70
70
  WHERE #{column} IN (#{dupe_host_ids.join(',')})
71
71
  |)
72
72
  end
73
73
  # destroy the duplicate host rows
74
- ActiveRecord::Base.connection.execute(%Q|
74
+ ApplicationRecord.connection.execute(%Q|
75
75
  DELETE FROM hosts WHERE id IN (#{dupe_host_ids.join(',')})
76
76
  |)
77
77
  end
@@ -1,4 +1,4 @@
1
- class RemoveCampaigns < ActiveRecord::Migration
1
+ class RemoveCampaigns < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  drop_table :attachments
4
4
  drop_table :attachments_email_templates
@@ -1,5 +1,5 @@
1
1
  # Changes web_vulns.confidence from text to integer as it is populated with integers.
2
- class ChangeWebVulnsConfidenceToInteger < ActiveRecord::Migration
2
+ class ChangeWebVulnsConfidenceToInteger < ActiveRecord::Migration[4.2]
3
3
  #
4
4
  # CONSTANTS
5
5
  #
@@ -1,4 +1,4 @@
1
- class ValidMdmWebVulnParams < ActiveRecord::Migration
1
+ class ValidMdmWebVulnParams < ActiveRecord::Migration[4.2]
2
2
  # Don't put back the bad format because there's not way to figure our which of the [] were '' before {#up} and
3
3
  # which were `[]` before {#up}.
4
4
  #
@@ -1,5 +1,5 @@
1
- class MakingVulnsRefsARealArModel < ActiveRecord::Migration
1
+ class MakingVulnsRefsARealArModel < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :vulns_refs, :id, :primary_key
4
4
  end
5
- end
5
+ end
@@ -1,4 +1,4 @@
1
- class CreateTaskCreds < ActiveRecord::Migration
1
+ class CreateTaskCreds < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :task_creds do |t|
4
4
  t.references :task, :null => false
@@ -1,4 +1,4 @@
1
- class CreateTaskHosts < ActiveRecord::Migration
1
+ class CreateTaskHosts < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :task_hosts do |t|
4
4
  t.references :task, :null => false
@@ -1,4 +1,4 @@
1
- class CreateTaskServices < ActiveRecord::Migration
1
+ class CreateTaskServices < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :task_services do |t|
4
4
  t.references :task, :null => false
@@ -1,4 +1,4 @@
1
- class RemoveCampaignIdFromClients < ActiveRecord::Migration
1
+ class RemoveCampaignIdFromClients < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  remove_column :clients, :campaign_id
4
4
  end
@@ -1,4 +1,4 @@
1
- class DropTableImportedCreds < ActiveRecord::Migration
1
+ class DropTableImportedCreds < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  drop_table :imported_creds
4
4
  end
@@ -1,4 +1,4 @@
1
- class MakingHostTagsARealArModel < ActiveRecord::Migration
1
+ class MakingHostTagsARealArModel < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :hosts_tags, :id, :primary_key
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateTaskSessions < ActiveRecord::Migration
1
+ class CreateTaskSessions < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :task_sessions do |t|
4
4
  t.references :task, :null => false
@@ -1,4 +1,4 @@
1
- class RemovePnameValidation < ActiveRecord::Migration
1
+ class RemovePnameValidation < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def change
4
4
  change_column :web_vulns, :pname, :text, :null => true
@@ -1,4 +1,4 @@
1
- class CreateAutomaticExploitationMatches < ActiveRecord::Migration
1
+ class CreateAutomaticExploitationMatches < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :automatic_exploitation_matches do |t|
4
4
  t.integer :ref_id
@@ -1,4 +1,4 @@
1
- class CreateAutomaticExploitationMatchSets < ActiveRecord::Migration
1
+ class CreateAutomaticExploitationMatchSets < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :automatic_exploitation_match_sets do |t|
4
4
  t.integer :workspace_id
@@ -1,4 +1,4 @@
1
- class CreateAutomaticExploitationRuns < ActiveRecord::Migration
1
+ class CreateAutomaticExploitationRuns < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :automatic_exploitation_runs do |t|
4
4
  t.integer :workspace_id
@@ -1,4 +1,4 @@
1
- class ModuleDetailOnAutomaticExploitationMatch < ActiveRecord::Migration
1
+ class ModuleDetailOnAutomaticExploitationMatch < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  rename_column :automatic_exploitation_matches, :ref_id, :module_detail_id
4
4
  add_column :automatic_exploitation_matches, :match_set_id, :integer
@@ -1,4 +1,4 @@
1
- class CreateAutomaticExploitationMatchResults < ActiveRecord::Migration
1
+ class CreateAutomaticExploitationMatchResults < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :automatic_exploitation_match_results do |t|
4
4
  t.integer :match_id
@@ -1,4 +1,4 @@
1
- class MakeMatchPolymorphic < ActiveRecord::Migration
1
+ class MakeMatchPolymorphic < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  add_column :automatic_exploitation_matches, :matchable_type, :string
4
4
  add_column :automatic_exploitation_matches, :matchable_id, :integer
@@ -1,4 +1,4 @@
1
- class AddDetectedArchToHost < ActiveRecord::Migration
1
+ class AddDetectedArchToHost < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :hosts, :detected_arch, :string, { :null => true }
4
4
  end
@@ -1,4 +1,4 @@
1
- class RemoveDuplicateServices < ActiveRecord::Migration
1
+ class RemoveDuplicateServices < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  select_mgr = Mdm::Service.arel_table.project(
4
4
  Mdm::Service[:host_id],
@@ -1,4 +1,4 @@
1
- class DropServiceUniquenessIndex < ActiveRecord::Migration
1
+ class DropServiceUniquenessIndex < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_index(:services, :host_id_and_port_and_proto)
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddVulnIdToNote < ActiveRecord::Migration
1
+ class AddVulnIdToNote < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :notes, :vuln_id, :integer
4
4
  add_index :notes, :vuln_id
@@ -1,4 +1,4 @@
1
- class RemoveDuplicateServices2 < ActiveRecord::Migration
1
+ class RemoveDuplicateServices2 < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  select_mgr = Mdm::Service.arel_table.project(
4
4
  Mdm::Service[:host_id],
@@ -1,4 +1,4 @@
1
- class CreateModuleRuns < ActiveRecord::Migration
1
+ class CreateModuleRuns < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :module_runs do |t|
4
4
  t.datetime :attempted_at
@@ -1,4 +1,4 @@
1
- class AddModuleRunToSession < ActiveRecord::Migration
1
+ class AddModuleRunToSession < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  change_table :sessions do |t|
4
4
  t.integer :module_run_id
@@ -1,4 +1,4 @@
1
- class AddModuleRunFkToLoot < ActiveRecord::Migration
1
+ class AddModuleRunFkToLoot < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  change_table(:loots) do |t|
4
4
  t.integer :module_run_id
@@ -1,4 +1,4 @@
1
- class AddModuleFullNameToMatch < ActiveRecord::Migration
1
+ class AddModuleFullNameToMatch < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :automatic_exploitation_matches, :module_fullname, :text
4
4
  add_index :automatic_exploitation_matches, :module_fullname
@@ -1,8 +1,8 @@
1
- class RenameModuleIndices < ActiveRecord::Migration
1
+ class RenameModuleIndices < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  # This migration will only need to be run if the indices were originally
4
4
  # generated before Rails 4. Fresh builds can safely skip this.
5
- return if ActiveRecord::Base.connection.indexes(:module_actions).first.name != 'index_module_actions_on_module_detail_id'
5
+ return if ApplicationRecord.connection.indexes(:module_actions).first.name != 'index_module_actions_on_module_detail_id'
6
6
 
7
7
  rename_index :module_actions,
8
8
  'index_module_actions_on_module_detail_id',