Commit Graph

126 Commits

Author SHA1 Message Date
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
Adam Cammack 81ec33b0e4 Refactor script path check into base module loader 2018-04-10 11:07:21 -05:00
Brent Cook 6c8ea2d883 also be sure to load executable modules if they don't have #! 2018-04-07 21:15:51 -05:00
Brent Cook 28ebe9d102 sanity check that external modules start with #! before executing 2018-04-07 16:31:34 -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 71149e9c68 Remove executable Ruby files from classic loading 2018-03-23 14:49:06 -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
Jeffrey Martin b9fc786d24 Land #9744, Add synchronization around public module metadata cache methods 2018-03-22 17:24:39 -05:00
Adam Cammack bb8fd45cb2 Land #9739, Add Python logging module support 2018-03-21 14:48:49 -05:00
christopher lee 70c9a434e6 Add synchronization around public module metadata cache methods 2018-03-21 14:23:34 -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
christopher lee 0949e0a501 Don't munch exception 2018-02-28 11:28:07 -06:00
christopher lee cea61e7aa4 Fix bug with remove_from_cache 2018-02-28 11:21:34 -06:00
christopher lee 1686b82a40 Adhere to style guide by using unless 2018-02-28 11:11:26 -06:00
christopher lee 8b4c7b886f Updated to use delete_if 2018-02-28 11:00:40 -06:00
christopher lee 964be3b5f0 Fix problem with stale module cache 2018-02-28 08:41:14 -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
Matthew Kienow 6caba521d3 Land #9424, Add SharknAT&To external scanner 2018-01-24 12:40:29 -05: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
christopher lee 87f8b68099 Ensure config directory always exist, seems to be timing issue in rspec 2018-01-18 14:56:07 -06:00
Brent Cook 7fe237abe1 Land #9220, Module cache improvements 2018-01-17 22:34:51 -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
christopher lee 621130d74b Added missing requires 2017-11-17 13:06:05 -06:00
christopher lee a16cd5aade Clean up metadata store logic 2017-11-17 12:42:19 -06:00
christopher lee 0e642bd9cd Remove puts and fix bug 2017-11-16 12:59:14 -06:00
christopher lee e89eb6e8b6 Fix first time startup timing bug 2017-11-16 12:50:31 -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
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 3b248c78f3 resurrect old example modules, integrate into module tree 2017-06-22 11:36:35 -05:00