Commit Graph

275 Commits

Author SHA1 Message Date
Jeffrey Martin 03a30d80ef creds need web service to support request by :id 2020-10-01 11:13:38 -05:00
Adam Galway 571504642a fixes get_service calls 2020-09-22 12:54:58 +01:00
adfoster-r7 9ef5822d3a Revert "Replaces erroneous calls to get_service" 2020-09-18 19:09:25 +01:00
Grant Willcox a5c30be10b Land #14143, Replace erroneous calls to get_service 2020-09-17 10:41:15 -05:00
Adam Galway 9a75fa681a removes undeeded id insertion into URL 2020-09-17 14:19:10 +01:00
Christophe De La Fuente 3728df544e base64-encode data for string and array 2020-09-16 16:49:44 +02:00
Adam Galway 4918ecf826 replaced get_service calls with services calls 2020-09-16 12:29:15 +01:00
Jeffrey Martin dee523f9e7 load to mitigate first missing db connection
When calling `first` in Rails 5.2 the connection is not found
however by forcing the records to load with `to_a` which happens to
function correctly the call is then sent to `Array.first`
2020-08-03 10:51:18 -05:00
Jeffrey Martin 07cbe426e2 Rails 5, all models inherit from ApplicationRecord
ApplicationRecord is a new superclass for all app models, analogous to app controllers subclassing ApplicationController instead of ActionController::Base. This gives apps a single spot to configure app-wide model behavior.
https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#active-record-models-now-inherit-from-applicationrecord-by-default

Deprecated Relation#uniq use Relation#distinct instead.
https://edgeguides.rubyonrails.org/5_0_release_notes.html#active-record-deprecations
2020-07-31 11:56:49 -05:00
Adam Galway 1a2bf98222 creates standard elog & updates exisiting usages 2020-06-22 12:48:39 +01:00
Adam Galway 8e3add3f5f simplifies get host id, renames endpoints & clean 2020-04-28 13:33:54 +01:00
Adam Galway d0b66fc28e adds host tag implementation checks 2020-04-24 12:43:12 +01:00
Adam Galway 34d4835eb9 PRC: improved error handling 2020-04-24 11:27:50 +01:00
Adam Galway 0bd43096f1 PRC return tags for del & add, simplified DB call 2020-04-23 17:01:32 +01:00
Adam Galway 789b5dec00 adds tag functionality for hosts 2020-04-22 16:47:23 +01:00
Francesco Soncina 64c4fec0d0 accept both array or string in report_loot() 2020-02-13 16:12:40 +01:00
Jeffrey Martin 10770b40a3 less code same result 2019-12-13 14:09:03 -06:00
Jeffrey Martin 9d89fc2eba clone options & return login object not core 2019-12-12 12:47:45 -06:00
Jeffrey Martin ba06624e57 consistent usage of :workspace key 2019-11-22 11:16:22 -06:00
dwelch-r7 191cbcdd12 Add some missing remote data calls
Also adds some extra verification for the specified workspace in incoming requests
2019-11-16 00:04:44 +00:00
Adam Cammack bd6a0c872f Remove workspace reqs from remote db payloads
The requirements had already been removed from local payloads in
865f214a85
2019-07-26 17:55:57 -05:00
bwatters-r7 93f8d94154 Changes to venom to handle pingbacks and really delete extra files, this time. 2019-07-25 19:45:10 -05:00
bwatters-r7 e710c93363 Remove async callback stuff for later work and change db checks 2019-07-25 19:45:10 -05:00
asoto-r7 af285340ea Copy-pasta badness 2019-07-25 19:45:10 -05:00
asoto-r7 b0d602e0df Added autoload entries for AsyncCallback 2019-07-25 19:45:10 -05:00
asoto-r7 14039b18b1 Correctly fixed json_to_mdm_object (thanks @mkienow-r7 for the catch)! 2019-07-25 19:43:14 -05:00
asoto-r7 26257fabef Updated json_to_mdm_object() calls, removing third parameter 2019-07-25 19:43:14 -05:00
Aaron Soto 353e8e6be9 WIP: Remove PUT and DELETE endpoints 2019-07-25 19:42:25 -05:00
Aaron Soto a1b51361b0 Bring pingback-payload changes into public framework 2019-07-25 19:42:25 -05:00
Matthew Kienow 3c4699c848 Remove unnecessary leading slash from log message 2019-06-05 15:10:00 -04:00
Matthew Kienow 25f45144e8 Handle exceptions raised by get_msf_version call
Exceptions may be raised via the remote data service response handling
while making the call to check the MSF version.
2019-06-05 15:09:33 -04:00
Matthew Kienow 749501d449 Refactor remote data service response handling
Raises exceptions for error responses rather than failing silently.
This exposes the server-side error message to the user in console.
2019-06-04 12:09:06 -05:00
Matthew Kienow 8fe11744bd Use the revised ResponseWrapper error classes 2019-06-04 11:59:00 -05:00
Matthew Kienow 52c67a6952 Modify ResponseWrapper to support three states
There is a success response, an error response and a failed response.
An error response contains a body with an error message from the
server-side, while a failed response represents an invalid response
caused by an issue with the request or response.
2019-06-04 11:56:12 -05:00
Jacob Robles 7c29c56880 Bubble error
Raise Validation error that is checked for
2019-05-31 14:57:33 -05:00
William Vu 8e8763df5b Update invalidate_login to remove regex creds 2019-04-17 13:24:59 -05:00
Matthew Kienow 1b86c41dcc Add add_opts_workspace call to query and create 2019-03-25 19:39:25 -04:00
Matthew Kienow 6709780817 Add entry to autoload PayloadDataProxy 2019-03-25 13:43:16 -04:00
Matthew Kienow 98401072e5 Remove duplicate autoload for WebDataProxy 2019-03-25 13:38:32 -04:00
Brent Cook 656ef8f970 Land #11533, Fix credential reporting service lookups 2019-03-06 20:13:41 -06:00
Brent Cook 841c07a42c restore rescue for now 2019-03-06 19:35:12 -06:00
Brent Cook 4f08d1e864 Fix credential reporting service lookups.
Noted by @actuated, auxiliary/scanner/ipmi/ipmi_dumphashes was displaying an error when run against an IPMI endpoint that had a common hash. This was due to the services lookup in the database not extracting the first element of the results array.

```
[-] Auxiliary failed: NoMethodError undefined method `id' for #<Array:0x000055615614b970>
[-] Call stack:
[-]   /home/bcook/projects/metasploit-framework/lib/metasploit/framework/data_service/proxy/credential_data_proxy.rb:27:in `block (2 levels) in create_cracked_credential'
[-]   /home/bcook/.rvm/gems/ruby-2.6.1@metasploit-framework/gems/activerecord-4.2.11/lib/active_record/relation/delegation.rb:46:in `each'
[-]   /home/bcook/.rvm/gems/ruby-2.6.1@metasploit-framework/gems/activerecord-4.2.11/lib/active_record/relation/delegation.rb:46:in `each'
[-]   /home/bcook/projects/metasploit-framework/lib/metasploit/framework/data_service/proxy/credential_data_proxy.rb:25:in `block in create_cracked_credential'
[-]   /home/bcook/projects/metasploit-framework/lib/metasploit/framework/data_service/proxy/core.rb:166:in `data_service_operation'
[-]   /home/bcook/projects/metasploit-framework/lib/metasploit/framework/data_service/proxy/credential_data_proxy.rb:15:in `create_cracked_credential'
[-]   /home/bcook/projects/metasploit-framework/lib/msf/core/auxiliary/report.rb:26:in `create_cracked_credential'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:317:in `report_cracked_cred'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:244:in `block (2 levels) in run_host'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:237:in `each'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:237:in `block in run_host'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:100:in `each'
[-]   /home/bcook/projects/metasploit-framework/modules/auxiliary/scanner/ipmi/ipmi_dumphashes.rb:100:in `run_host'
[-]   /home/bcook/projects/metasploit-framework/lib/msf/core/auxiliary/scanner.rb:111:in `block (2 levels) in run'
[-]   /home/bcook/projects/metasploit-framework/lib/msf/core/thread_manager.rb:106:in `block in spawn'
[*] Auxiliary module execution completed
```
2019-03-06 17:08:34 -06:00
Matthew Kienow 6bcdda4bd1 Add entry to autoload RemotePayloadDataService 2019-03-06 13:41:08 -05:00
Matthew Kienow 63c1903032 Remove empty file 2019-03-06 13:11:34 -05:00
Matthew Kienow b658cf5d76 Use data_service_operation block to perform work 2019-03-06 12:11:27 -05:00
Aaron Soto 822f5357a2 Land #10675, DB manager for payloads: Resolve conflicts, add 'create!' to trigger database write 2019-03-04 14:58:03 -06:00
James Barnett 9e3a39bcf9 Dont try to process empty loot 2019-01-25 12:34:52 -06:00
James Barnett 42c9553283 Dont do a separate lookup for loot.host, use the included JSON
This is just a temporary change. Eventually we should be doing separate
lookups for associated objects as that is the RESTful way of doing it.
Implementing this now to prevent extra load on the server until we can
put a better system in place of doing multiple lookups with a single call.
2019-01-15 12:47:37 -06:00
James Barnett e168458861 Make calls to get the associated host when getting loot 2019-01-14 15:51:51 -06:00
Brent Cook f125526e09 Land #11207, implement db_import for web service 2019-01-10 10:28:29 -06:00