Commit Graph

221 Commits

Author SHA1 Message Date
Adam Cammack 1d168a84e5 Add 'unknown' fallback check status
`check` is not a fan of `fail_with`, so fallback when the external
module exits unsuccessfully.
2018-05-14 11:00:40 -05:00
Adam Cammack 780b956dd1 Return results of external module runs
This will allow us to grab check results or more interesting things in
the future, if we decide that modules can have return values for more
types of things. Or this may go away and checks will use the reporting
interface like everything else.
2018-05-10 18:29:14 -05:00
Adam Cammack 271a2344db Refactor external module API to be more reliable
Also:
  Grabs exit status
  Less boilerplate required for modules
2018-05-09 13:30:13 -05:00
Adam Cammack 7c67d2b0b4 Add external module API for reporting passwords 2018-05-04 16:24:57 -05:00
William Vu d17cc757e7 Fix typo 2018-04-20 18:03:39 -05:00
William Vu 1f5ece9c46 Fix target NOP generator not passed to payload 2018-04-20 17:12:55 -05:00
William Vu 33bde31eec Fix target encoder not being passed to payload
Datastore functionality has been preserved as an override.
2018-04-19 02:25:18 -05:00
h00die c7bbc6eca4 juniper post enum module 2018-02-22 21:08:21 -05:00
Matthew Kienow 6caba521d3 Land #9424, Add SharknAT&To external scanner 2018-01-24 12:40:29 -05:00
Brent Cook 7fe237abe1 Land #9220, Module cache improvements 2018-01-17 22:34:51 -06:00
Adam Cammack fb41eea8cc Add vuln reporting to external module API 2018-01-16 21:05:19 -06:00
Adam Cammack 9527c6ffcf Ensure all messages are read from external modules 2018-01-16 21:05:19 -06:00
Tim c4e20e01e3 iOS meterpreter 2017-12-12 23:23:21 +08:00
Brent Cook c848379ecb simply use refname in the prompt? 2017-11-29 20:52:14 -06:00
Brent Cook e5a5d35ad8 add 'promptname' that expands the module path a bit more
This allows the user to actually see the module context.
2017-11-29 19:49:43 -06:00
Adam Cammack 3fff092042 Fix include scope in external module mixin
The auxiliary report mixin overrides some of the methods in
Metasploit::Credential, which is fine in framework, but causes issues in
projects relying on the base behavior of Metasploit::Credential. This
changes the include scope from global to just whatever includes the
external module mixin.
2017-11-28 21:41:52 -06:00
Brent Cook 81c6823b72 handle interrupt and unknown exceptions properly with external modules 2017-11-21 17:50:53 -06:00
Adam Cammack dd57138423 Make external module read loop more robust
Changes from a "hope we get at most one message at a time" model to
something beginning to resemble a state machine. Also logs error output
and fails the MSF module when the external module fails.
2017-11-20 16:52:05 -06:00
Matthew Kienow 39f06a3995 Land #8807, template for external module servers 2017-11-20 17:34:37 -05:00
christopher lee 238aecf81c Integrated first round of feedback 2017-11-20 10:45:39 -06:00
christopher lee fe1af35107 First pass at changes needed for module metadata caching 2017-11-15 16:38:01 -06:00
christopher lee 43ddc66350 Initial fix for non db cache 2017-11-07 10:33:47 -06:00
Brent Cook 90766ceceb remove more unusual raise RuntimeError patterns 2017-11-01 05:59:12 -05:00
Adam Cammack 4ea8f639a3 Add host and service reporting to external modules 2017-09-22 11:42:32 -05:00
Jeffrey Martin cba4d36df2 provide missing bits for R platform 2017-08-23 16:58:48 -05:00
Brent Cook 461ab4501d add 'Also known as', AKA 'AKA', to module references 2017-06-28 15:53:00 -04:00
James Lee 4def7ce6cc Land #8327, Simplify storing credentials 2017-05-18 16:49:01 -05:00
Brent Cook a2ce3743a2 move wait_status to a mixin 2017-05-08 12:23:27 -05:00
Jeffrey Martin a1efa30fa2 comments adjustments & enum better 2017-05-08 11:57:06 -05:00
Jeffrey Martin e2fe70d531 convert store_valid_credential to named params 2017-05-05 18:23:15 -05:00
Jeffrey Martin 3bc4ac68dc merge all available keys for login storage 2017-05-04 22:51:48 -05:00
Jeffrey Martin 63b6ab5355 simplify valid credential storage 2017-05-04 22:51:40 -05:00
Pearce Barry 23c2787d57 Land #7795, Hardware Bridge API.
Initial bridge API that supports the HW rest protocol.
2017-02-02 08:47:59 -06:00
Brent Cook f69b4a330e handle Ruby 2.4 Fixnum/Bignum -> Integer deprecations 2017-01-22 10:20:03 -06:00
Craig Smith 5f07bca775 Hardware Bridge API. Initial bridge API that supports the HW rest protocol specified here:
http://opengarages.org/hwbridge  Supports an automotive extension with UDS calls for mdoule
development.
2017-01-06 19:51:41 -08:00
William Vu 4264521354 Fix broken CVE reference and update links
Prefer HTTPS over HTTP, too.
2017-01-01 21:33:59 -06:00
OJ e8158bd200 Add multi platform type, wire into the multi stage 2016-11-28 09:34:09 +10:00
Tod Beardsley 1deacad2be Add a print_bad alias for print_error
Came up on Twitter, where Justin may have been trolling a little:

https://twitter.com/jstnkndy/status/798671298302017536

We have a `print_good` method, but not a `print_bad`, which seems a
little weird for Ruby -- opposite methods should be intuitive as Justin
is implying.

Anyway, I went with alias_method, thanks to the compelling argument at

https://github.com/bbatsov/ruby-style-guide#alias-method

...since Metasploit is all about the singleton, and didn't want to risk
some unexpected scoping thing.

Also dang, we define the `print_` methods like fifty billion times!
Really should fix that some day.
2016-11-15 19:20:42 -06:00
Brent Cook 1b31e0a63e remove osvdb links 2016-09-20 14:27:59 -05:00
Brent Cook 71a674434a Solaris 11 2016-05-09 05:11:09 -05:00
Louis Sato 0c19d89655 add more space for deprecation message 2016-03-23 11:39:42 -05:00
Brent Cook 654590911b Enforce integrity of datastore options on assignment 2016-03-15 14:00:32 -05:00
Brent Cook 694f7f0a65 stop turning all default options into strings
we need to adjust vprint* functions, since they now fallthrough to the
'framework.datastore' checks because the false case actually triggers.
2016-03-05 23:09:14 -06:00
James Lee a7869975d8 Remove useless variable 2016-01-14 10:04:23 -06:00
bigendian smalls bc718da5d9 Added mainframe as a platform in core
To develop modules, mainframe and zArchitecture needs to be defined in
several places.  This is the official platform.rb definition
2015-09-28 10:03:15 -05:00
HD Moore 77f56c563b Land #5867, add PACKETSTORM reference types 2015-09-01 23:25:01 -05:00
Roberto Soares 870e9f448e Added PacketStorm (PKT) in References Display 2015-08-20 00:36:27 -03:00
g0tmi1k a4dc409c12 Add empty default vprint value 2015-07-11 19:38:27 +01:00
Tom Sellers 480a176415 Initial commit 2015-05-02 10:11:17 -05:00
jvazquez-r7 4224008709 Delete print_debug/vprint_debug 2015-04-21 11:14:03 -05:00