Commit Graph

64 Commits

Author SHA1 Message Date
Dean Welch 8527eea15d Add lazy loading for payloads 2023-06-16 12:04:48 +00:00
Grant Willcox 08f07eccb6 Fix initial incorrect parameters in YARD documentation 2023-03-05 20:15:14 -06:00
adfoster-r7 f65119b353 Support OpenSSL3 and run Ubuntu 22.04 in test matrix 2022-08-03 15:49:53 +01:00
Alan Foster c8cc111318 Rename class.parents to class.module_parents 2021-08-09 12:16:13 -05:00
Jeffrey Martin 047a1eba07 Rails 6.1 upgrade 2021-08-09 12:16:08 -05:00
cgranleese-r7 98349a6823 Improve handling of external modules when missing runtime dependencies 2021-02-02 14:49:16 +00:00
dwelch-r7 1617b3ec9b Use zeitwerk for lib/msf/core folder 2020-12-07 10:31:45 +00:00
h00die 87b55afd44 better code optimization 2020-10-24 10:09:10 -04:00
h00die eb665dae7a warn of possible external modules which are -x 2020-10-21 17:00:32 -04:00
h00die bda836dc65 warn of possible external modules which are -x 2020-10-21 16:57:22 -04:00
Alan Foster 2439342aba Add consistent error logging for module loading 2020-06-23 11:15:08 +01:00
Adam Galway 1a2bf98222 creates standard elog & updates exisiting usages 2020-06-22 12:48:39 +01:00
Brent Cook 010cfe2d65 =~ / match? 2019-12-02 09:03:58 -06:00
Brent Cook 0f6cab0f7b prefer starts_with? and ends_with? over creating new strings 2019-12-02 09:03:58 -06:00
Adam Cammack 948918dacb Use alias when reloading aliased module
Also speeds up module reloads by avoiding module instance creating
without a type.

Fixes #12026
2019-08-22 17:58:20 -05:00
William Vu 8e9c207d26 Clarify module name is filename as per msftidy 2019-03-11 23:53:36 -05:00
William Vu 1d8538caee Direct user to framework.log for load problems
This reduces long lines and cluttered output during startup.
2019-03-11 23:40:59 -05:00
William Vu 6c4729de7e Prefer a soft error for invalid module names 2019-03-11 22:54:34 -05:00
Brent Cook dea460c813 golang module loader support 2018-11-06 11:12:02 -06:00
William Vu 0b8926715e Reactively check for invalid module names 2018-10-10 14:33:59 -05:00
William Vu 1737935dc0 Convert reverse_relative_name to a class method
It'll be easier to use this way if someone uses it externally.
2018-10-10 13:21:18 -05:00
Wei Chen c7efd57144 Sync up with master 2018-10-06 08:27:01 -05:00
William Vu 46e7b8ac98 Namespace modules using full name instead of hex 2018-10-01 18:32:23 -05:00
Wei Chen f176dd03b5 Add a new module type to support evasion (WIP) 2018-08-02 11:54:38 -05:00
Adam Cammack 81ec33b0e4 Refactor script path check into base module loader 2018-04-10 11:07:21 -05:00
Brent Cook 3b248c78f3 resurrect old example modules, integrate into module tree 2017-06-22 11:36:35 -05:00
Christian Mehlmauer 3b280d45a4 fix some yardoc issues 2016-04-18 21:00:21 +02:00
Christian Mehlmauer 4f09246c78 reenable module loader warnings 2016-03-13 20:04:05 +01:00
Christian Mehlmauer 3123175ac7 use MetasploitModule as a class name 2016-03-08 14:02:44 +01:00
Brent Cook 5a0bec81cb disable warnings for now, to be reenabled when the module base class is updated 2016-03-06 17:19:05 -06:00
Christian Mehlmauer e6147d60e2 fix rspecs 2016-01-22 23:43:13 +01:00
Christian Mehlmauer 158b1e473c revert value 2016-01-22 23:38:45 +01:00
Christian Mehlmauer 02841c79c3 some slight changes 2016-01-22 23:38:45 +01:00
Christian Mehlmauer 0546911eef fix error when invalid classname eg "class Metasploit1 < .." 2016-01-22 23:38:45 +01:00
Christian Mehlmauer 8f4752d11e show load warnings to the user 2016-01-22 23:38:45 +01:00
Christian Mehlmauer 7dac21f58c do not fail on old class name 2016-01-22 23:36:37 +01:00
Christian Mehlmauer 51eb79adc7 first try in changing class names 2016-01-22 23:36:37 +01:00
wchen-r7 f59c99e2ff Remove msfcli, please use msfconsole -x instead
msfcli is no longer supported, please use msfconsole.

Announcement on SecurityStreet:
Weekly Metasploit Wrapup
Posted by Tod Beardsley in Metasploit on Jan 23, 2015 11:57:05 AM
2015-07-09 12:50:02 -05:00
root 51dd88114b Fix grammer in comments 2015-04-13 13:21:41 +05:00
HD Moore 5e123e024d Add 'coding: binary' to all msf/rex library files
This fixes a huge number of hard-to-detect runtime bugs
that occur when a default utf-8 string from one of these
libraries is passed into a method expecting ascii-8bit
2014-08-17 17:31:53 -05:00
sinn3r a0decf502f Refactor msfcli 2013-07-28 12:40:50 -05:00
sinn3r 0fd2c385fb Update documentation 2013-07-24 19:02:10 -05:00
sinn3r ed51d284fa Change name, change how data is passed, fix rspec 2013-07-24 17:15:56 -05:00
sinn3r e120ecfba9 msfcli is designed to load only one module (auxiliary or exploit),
so we shouldn't have to load all of them to run this utility. The
overall goal of this PR is to narrow down what modules
(exploit/aux + payload + encoder + nop) you possibly need in order
to shave off loading time. By doing this, on my box this is 5-6
seconds faster than the original one.

I actually tried to avoid making too many changes in the library
(such as Module Manager), because we don't have test cases for them,
and we can't really afford to risk breaking it. I also developed
a test script to actually be able to test msfcli.
2013-07-24 14:40:46 -05:00
Luke Imhoff 2317e9cced Fix yard tag warnings
[#46491831]
2013-03-30 17:13:12 -05:00
Luke Imhoff 7ed2812ec3 Fix Cannot resolve link YARD warnings
[#46491831]
2013-03-30 16:58:49 -05:00
James Lee f4476cb1b7 Really fix payload recalculation
Instead of deleting all non-symbolics before the re-adding phase of
PayloadSet#recalculate, store a list of old module names, populate a
list of new ones during the re-adding phase, and finally remove any
non-symbolic module that was in the old list but wasn't in the new list.

Also includes a minor refactoring to make ModuleManager its own thing
instead of being an awkard subclass of ModuleSet. Now PayloadSet doesn't
need to know about the existence of framework.modules, which makes the
separation a little more natural.

[FixRM #7037]
2012-12-03 22:23:40 -06:00
James Lee 26a145e527 Always overwrite the old module even when ambiguous 2012-11-07 18:51:12 -06:00
James Lee 3a572625f5 return inside a block returns from outer method
So no need to check its return value.
2012-11-07 17:43:22 -06:00
James Lee aaa5a3c0bb Add "Call stack:" to the log when a module load fails 2012-11-07 12:48:55 -06:00