christopher lee
1b7e613080
Fixed bug in module cache
2018-05-21 14:18:43 -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
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