diff --git a/lib/msf/core/exploit.rb b/lib/msf/core/exploit.rb index 457c3a88b6..5ba483932b 100644 --- a/lib/msf/core/exploit.rb +++ b/lib/msf/core/exploit.rb @@ -597,41 +597,6 @@ class Exploit < Msf::Module encoded end - ## - # - # Feature detection - # - # These methods check to see if there is a derived implementation of - # various methods as a way of inferring whether or not a given exploit - # supports the feature. - # - ## - - # - # Returns true if the exploit module supports the check method. - # - def supports_check? - derived_implementor?(Msf::Exploit, 'check') - end - - # - # Returns true if the exploit module supports the exploit method. - # - def supports_exploit? - derived_implementor?(Msf::Exploit, 'exploit') - end - - # - # Returns a hash of the capabilities this exploit module has support for, - # such as whether or not it supports check and exploit. - # - def capabilities - { - 'check' => supports_check?, - 'exploit' => supports_exploit? - } - end - ## # # Getters/Setters diff --git a/lib/msf/core/module.rb b/lib/msf/core/module.rb index 4a7c449d58..3771853137 100644 --- a/lib/msf/core/module.rb +++ b/lib/msf/core/module.rb @@ -359,15 +359,6 @@ class Module self.module_store = {} end - # - # Checks to see if a derived instance of a given module implements a method - # beyond the one that is provided by a base class. This is a pretty lame - # way of doing it, but I couldn't find a better one, so meh. - # - def derived_implementor?(parent, method_name) - (self.method(method_name).to_s.match(/#{parent}[^:]/)) ? false : true - end - attr_writer :platform, :references # :nodoc: attr_writer :privileged # :nodoc: attr_writer :license # :nodoc: diff --git a/lib/msf/core/payload/stager.rb b/lib/msf/core/payload/stager.rb index 1f2ff91aaf..e1dcf0bea1 100644 --- a/lib/msf/core/payload/stager.rb +++ b/lib/msf/core/payload/stager.rb @@ -215,15 +215,6 @@ module Msf::Payload::Stager conn.put(p) end - # If the stage implements the handle connection method, sleep before - # handling it. - if (derived_implementor?(Msf::Payload::Stager, 'handle_connection_stage')) - print_status("Sleeping before handling stage...") - - # Sleep before processing the stage - Rex::ThreadSafe.sleep(1.5) - end - # Give the stages a chance to handle the connection handle_connection_stage(conn, opts) end