Use framework.payloads instead of modules
When we know the module we're creating is definitely a payload, don't bother looking in the other module sets. Also removes an exception message that gets ignored anyway because the exception class has a hard-coded #to_sbug/bundler_fix
parent
77af4ba559
commit
d57c24dd5f
|
@ -69,8 +69,7 @@ module Exploit
|
|||
|
||||
# Make sure parameters are valid.
|
||||
if (opts['Payload'] == nil)
|
||||
raise MissingPayloadError,
|
||||
"You must specify a payload.", caller
|
||||
raise MissingPayloadError.new, caller
|
||||
end
|
||||
|
||||
# Verify the options
|
||||
|
@ -81,7 +80,7 @@ module Exploit
|
|||
|
||||
# Initialize the driver instance
|
||||
driver.exploit = exploit
|
||||
driver.payload = exploit.framework.modules.create(opts['Payload'])
|
||||
driver.payload = exploit.framework.payloads.create(opts['Payload'])
|
||||
|
||||
# Set the force wait for session flag if the caller requested force
|
||||
# blocking. This is so that passive exploits can be blocked on from
|
||||
|
|
|
@ -1859,7 +1859,7 @@ class Core
|
|||
end
|
||||
|
||||
if (mod.exploit? and mod.datastore['PAYLOAD'])
|
||||
p = framework.modules.create(mod.datastore['PAYLOAD'])
|
||||
p = framework.payloads.create(mod.datastore['PAYLOAD'])
|
||||
if (p)
|
||||
p.options.sorted.each { |e|
|
||||
name, opt = e
|
||||
|
@ -2389,7 +2389,7 @@ class Core
|
|||
|
||||
# How about the selected payload?
|
||||
if (mod.exploit? and mod.datastore['PAYLOAD'])
|
||||
p = framework.modules.create(mod.datastore['PAYLOAD'])
|
||||
p = framework.payloads.create(mod.datastore['PAYLOAD'])
|
||||
if (p and p.options.include?(opt))
|
||||
res.concat(option_values_dispatch(p.options[opt], str, words))
|
||||
end
|
||||
|
@ -2623,7 +2623,7 @@ protected
|
|||
# If it's an exploit and a payload is defined, create it and
|
||||
# display the payload's options
|
||||
if (mod.exploit? and mod.datastore['PAYLOAD'])
|
||||
p = framework.modules.create(mod.datastore['PAYLOAD'])
|
||||
p = framework.payloads.create(mod.datastore['PAYLOAD'])
|
||||
|
||||
if (!p)
|
||||
print_error("Invalid payload defined: #{mod.datastore['PAYLOAD']}\n")
|
||||
|
@ -2688,7 +2688,7 @@ protected
|
|||
# If it's an exploit and a payload is defined, create it and
|
||||
# display the payload's options
|
||||
if (mod.exploit? and mod.datastore['PAYLOAD'])
|
||||
p = framework.modules.create(mod.datastore['PAYLOAD'])
|
||||
p = framework.payloads.create(mod.datastore['PAYLOAD'])
|
||||
|
||||
if (!p)
|
||||
print_error("Invalid payload defined: #{mod.datastore['PAYLOAD']}\n")
|
||||
|
@ -2711,7 +2711,7 @@ protected
|
|||
# If it's an exploit and a payload is defined, create it and
|
||||
# display the payload's options
|
||||
if (mod.exploit? and mod.datastore['PAYLOAD'])
|
||||
p = framework.modules.create(mod.datastore['PAYLOAD'])
|
||||
p = framework.payloads.create(mod.datastore['PAYLOAD'])
|
||||
|
||||
if (!p)
|
||||
print_error("Invalid payload defined: #{mod.datastore['PAYLOAD']}\n")
|
||||
|
|
|
@ -551,7 +551,7 @@ class Driver < Msf::Ui::Driver
|
|||
case var.downcase
|
||||
when "payload"
|
||||
|
||||
if (framework and framework.modules.valid?(val) == false)
|
||||
if (framework and framework.payloads.valid?(val) == false)
|
||||
return false
|
||||
elsif (active_module)
|
||||
active_module.datastore.clear_non_user_defined
|
||||
|
|
Loading…
Reference in New Issue