Commit Graph

242 Commits

Author SHA1 Message Date
dwelch-r7 1617b3ec9b Use zeitwerk for lib/msf/core folder 2020-12-07 10:31:45 +00:00
Spencer McIntyre 83b9014bd4 Switch the signature to use an optional details 2020-11-13 14:09:14 -05:00
Spencer McIntyre 8b2227004d Move the details back into the struct field for the array interface 2020-10-23 10:10:36 -04:00
Spencer McIntyre 50a479e675 Alter how the check code details are handled for compatibility 2020-10-21 16:30:00 -04:00
Spencer McIntyre 2077f241c1 Support and use CheckCode details to share relevant information
Modules that can be used as check modules should be able to share
information with their exploit counterpart.
2020-10-21 16:29:31 -04:00
adfoster-r7 9ef5822d3a Revert "Replaces erroneous calls to get_service" 2020-09-18 19:09:25 +01:00
Adam Galway 4918ecf826 replaced get_service calls with services calls 2020-09-16 12:29:15 +01:00
William Vu b28d9517bc Exclude multi from automatic PAYLOAD selection 2020-06-23 16:12:28 -05:00
Adam Galway 1a2bf98222 creates standard elog & updates exisiting usages 2020-06-22 12:48:39 +01:00
h00die a8673e0efc pihole dhcp exec 2020-05-16 01:30:58 -04:00
Brent Cook 5bccf66dcc handle Ranges with rand_text while in debug mode 2020-01-22 05:31:33 -06:00
Adam Cammack 121a6fd0e7 Order matters sometimes
Since the constants are evaluated when they are declared, they need to
be after the new `#initialize` method since it sets the messages.
2019-10-18 10:57:16 -05:00
Adam Cammack ba9c46ee91 Remove CheckCodes kludge from external modules
Now that the new CheckCode class can add boilerplate human text by
itself we no longer need the hash of built-in values.
2019-10-15 16:24:35 -05:00
Adam Cammack 7e5f866ffe Keep extended check reasons separate from messages
Have the long code text and the reason glued together does not make
sense for all check displayers. I would prefer to have this at a
different level, but I'm not too keen on refactoring all the places
where it's touched. I couldn't find any remaining places that depend on
the length of the struct, so this looks safe to add straight as another
field.
2019-10-15 16:24:02 -05:00
Brent Cook 63acf686a6 Fixed typos, extended messages append existing ones 2019-10-14 15:52:24 +01:00
Adam Cammack 2a32c7b9c5 Extend check codes to allow custom messages 2019-10-08 09:57:53 -05:00
William Vu 9592e85975 Fix stack_adjustment nil bug and refactor method
Also fix incorrect docs.
2019-09-30 19:18:58 -05:00
Adam Cammack 969ad7aa8a Add Msf::Module::Alert for alerting users 2019-08-22 17:58:20 -05:00
Jeffrey Martin 2e06b4e93f Land #12126, Implement "set PAYLOAD" by index 2019-07-31 14:50:20 -05:00
bwatters-r7 05ffa6e4a0 More updates, optimizations, and style fixes 2019-07-29 16:29:32 -05:00
Brent Cook 463c147977 fix method check in metadata updates 2019-07-25 23:23:20 -05:00
bwatters-r7 7c2d214af2 Clean up debugging, move options to one place and delete superflous file
change the uuid handing to prevent changes to it when it gets put in payloads
2019-07-25 19:45:05 -05:00
bwatters-r7 310533f96c First stab at filtering payloads that require cleanup 2019-07-25 19:44:09 -05:00
bwatters-r7 80dbef20f2 Follow acammack's guidance for excluding filedropped exploits
usage of pingback payloads
2019-07-25 19:43:14 -05:00
asoto-r7 a12f9a5e4c Revert f162822 2019-07-25 19:43:14 -05:00
asoto-r7 53447462bd Remove a left-over 'pry' debugger invocation 2019-07-25 19:43:14 -05:00
asoto-r7 cb270cd57a WIP: Adding default pingback payload to parent check method 2019-07-25 19:42:50 -05:00
William Vu 40b040b3e6 Cache "show payloads" and set PAYLOAD by index 2019-07-24 20:15:12 -05:00
William Vu 29d6c270d4 Fix setting PAYLOAD clearing target DefaultOptions 2019-07-24 17:38:14 -05:00
William Vu 502a26bcbd Fix is_payload_compatible? for nil payloads 2019-07-11 14:00:24 -05:00
William Vu 6ea1e7aed2 Handle TypeError in case of nil 2019-05-13 17:32:54 -05:00
William Vu 249d3551ae Be good in other places 2019-05-13 17:15:31 -05:00
William Vu 9420b04dd9 Support generic payloads 2019-04-23 15:14:14 -05:00
William Vu e12b19a507 Enhance compatible_payloads to use module cache 2019-04-23 13:57:39 -05:00
Wei Chen c7efd57144 Sync up with master 2018-10-06 08:27:01 -05:00
Green-m 90b98a193c Refactor the rhosts for exploit modules. 2018-09-30 16:08:49 +08:00
Wei Chen 02ef565730 Update evasion_module_type branch 2018-09-24 08:20:32 -05:00
William Vu b3e9856851 Revert doc changes to exploit.rb autofilter
I think the changes might have been accidental.

3cf4329335
2018-09-13 13:27:52 -05:00
William Vu e2428b5c20 Fix target DisableNops not being passed to payload 2018-09-05 18:07:54 -05:00
Wei Chen 5c6b33bcf4 Add support for evasion targets, also module doc 2018-08-31 11:45:29 -05:00
William Vu 7e496ae067 Import target DefaultOptions into the datastore 2018-08-16 12:18:02 -05:00
William Vu e72b873f56 Fire off bind handlers when session_created? runs
Also refactor because bind handlers don't use setup_handler.
2018-07-12 10:45:59 -05:00
William Vu 8d135aec39 Implement first pass at deferred payload handling
This is most useful for bind payloads, and I initially did just that,
but I've migrated the code to be more generic.
2018-07-06 14:26:31 -05:00
Brent Cook 37f1e44a12 Land #10009, Add initial check support to external modules 2018-05-18 09:31:31 -05:00
Adam Cammack 147471fb79 Add constant for reverse check code lookup 2018-05-10 18:24:57 -05:00
William Vu 8881d32a45 Add target selection and tab completion by name 2018-05-03 21:03:05 -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
Adam Cammack f1d426d257 Land #9833, Remove broken feature detection 2018-04-11 15:02:53 -05:00
Brent Cook 6fb6570f99 delete old feature detection code from exploit base
This deletes some old code that apparently has been broken and somewhat unused for many years.

The 'derived_implementor?' method for modules relies on the debug output from Ruby in order to tell of a class implements a method, but the regex it used didn't work properly with any modern Ruby version until 2.5.x. This caused a random sleep to get inserted into certain payload staging operations, which actively breaks staging in certain scenarios (I'm not trying to address that here).

This also removes some ancient module feature detection code, which also is entirely unused today.
2018-04-07 12:47:42 -05:00