Commit Graph

60 Commits

Author SHA1 Message Date
Adam Cammack 4f3cdd22f0 Allow Python modules to run independently 2018-07-10 10:24:07 -05:00
Adam Cammack 0dd89bf428 Add standalone runner for external modules 2018-07-10 10:24:07 -05:00
Adam Cammack 64c38ec6b8 Only elog when run inside of Framework 2018-07-10 10:24:07 -05:00
Adam Cammack 22167eba5c Make the Python login scanner API more sane 2018-07-10 10:24:07 -05:00
Adam Cammack 1fddbdb8ef Specify the command option external modules 2018-07-10 10:24:07 -05:00
Adam Cammack 6dafb13f28 Module metadata cleanup 2018-06-21 15:10:47 -05:00
William Vu 0820268d8a Improve rank handling with shim logic 2018-06-19 16:46:20 -05:00
William Vu 9545bac809 Rename remote_exploit_generic template
Dropping "generic" from the name. I initially had some reservations
about leaving it in, and after discussion with @acammack-r7, we've
decided it adds nothing useful.
2018-06-19 11:43:56 -05:00
William Vu 781478b283 Document some things 2018-06-19 11:20:15 -05:00
William Vu 02384371c4 Add remote_exploit_generic template 2018-06-18 13:29:52 -05:00
Adam Cammack ac03a0723a Factor external check shim into common template 2018-05-14 11:32:22 -05:00
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 e0fb1365e6 Add soft_check capability to external modules
A `soft_check` is something designed to evaluate the vulnerability of a
remote system without exploiting it (ex. banner checks, non-intrusive
fingerprinting).
2018-05-11 12:42:31 -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 a72ab10777 Add initial Python library for login scanners 2018-05-07 17:42:41 -05:00
Adam Cammack ee9da87f1e Add shim for external login scanner modules 2018-05-07 15:05:44 -05:00
Adam Cammack 7c67d2b0b4 Add external module API for reporting passwords 2018-05-04 16:24:57 -05:00
Adam Cammack 0834c1aabd Log when loading an invalid external module type 2018-05-04 15:55:21 -05:00
Adam Cammack e65de2b56f Conform to JSONRPC 2.0 spec in external modules
Responses to queries had a `response` field instead of the required
`result` field.
2018-04-12 16:55:27 -05:00
Brent Cook 226ef160ff Land #9748, Convert the smbloris DoS into an external module
Help reliability and performance. This some Ruby-specific external module
tooling as a result as well.
2018-04-02 23:25:10 -05:00
Brent Cook fa34f3e0a4 Land #9718, Add get_user_spns 'kerberoasting' module 2018-04-02 10:04:44 -05:00
Adam Cammack 133f982f7c Add external module bridge for Ruby
This runs Ruby external modules with the same Ruby that is running MSF,
so it might even work on Windows!
2018-03-23 14:46:40 -05:00
Adam Cammack bb8fd45cb2 Land #9739, Add Python logging module support 2018-03-21 14:48:49 -05:00
Spencer McIntyre 3aa37eb266 Add a log handler for external python modules 2018-03-21 10:14:49 -04:00
Jacob Robles fc9005df8a Add External License Support 2018-03-21 06:26:25 -05:00
Jacob Robles 86266dc636 Add batch_size option for external multi_scanner 2018-03-20 14:47:46 -05:00
Jacob Robles ca7caae622 Change External Module Type Names
Change the a couple of external module type names
to be consistent with the template files.
2018-03-20 10:19:57 -05:00
Adam Cammack 780c8f0506 Fix non-scanner external modules 2018-03-07 17:11:56 -06:00
Brent Cook 3f88e59516 handle Python 3.5/3.6 differences so we always have a UTF-8 string 2018-02-21 21:54:27 -06:00
Adam Cammack 02e81d166d Add Enum-type options for external modules 2018-02-02 14:40:04 -06:00
Adam Cammack ab36b5dd5d Add support for single-IP external scanners 2018-02-02 14:01:16 -06:00
Adam Cammack d08510596f Keep reading external messages on stderr eof 2018-01-23 10:46:06 -06:00
Adam Cammack 670055da4b Prevent leaked sockets in edge cases 2018-01-22 22:14:16 -06:00
Adam Cammack c76fa2c58f Vendor async_timeout 2018-01-22 22:12:28 -06:00
Adam Cammack 964810146a Python library style fixes 2018-01-22 22:10:32 -06:00
Adam Cammack 0f0b116751 Rename scanner bits to avoid confusion 2018-01-17 14:46:31 -06:00
Adam Cammack 37bf68869f Add scanner for the open proxy from 'SharknAT&To' 2018-01-16 21:05:19 -06:00
Adam Cammack a5be16f74e Add batch scanner external module type 2018-01-16 21:05:19 -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
Adam Cammack 3363bcf629 Add DataStore serialization that preserves Arrays 2018-01-16 21:05:19 -06:00
Matthew Kienow b6c81e6da0 Reimplement slowloris as external module 2017-11-21 16:21:01 -05:00
Adam Cammack 40a71af7ed Add missing end 2017-11-20 17:50:59 -06:00
Adam Cammack 2fdc34c8fd Add new template for DoS modules 2017-11-20 17:19:14 -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
Adam Cammack 4ea8f639a3 Add host and service reporting to external modules 2017-09-22 11:42:32 -05:00
Adam Cammack 1a9a942c1f Add external module template for capture servers 2017-08-07 13:31:46 -05:00
Brent Cook 42fd287038 remove debug 2017-05-10 13:04:12 -05:00
Brent Cook beea5e1a5c use wfsdelay consistently 2017-05-08 15:34:09 -05:00
Brent Cook fede672a81 further revise templates 2017-05-08 14:26:24 -05:00