Land #3628 - Add --ask option in msfconsole
commit
93174a818b
|
@ -670,6 +670,14 @@ class Core
|
|||
if(framework.sessions.length > 0 and not forced)
|
||||
print_status("You have active sessions open, to exit anyway type \"exit -y\"")
|
||||
return
|
||||
elsif(driver.confirm_exit and not forced)
|
||||
print("Are you sure you want to exit Metasploit? [y/N]: ")
|
||||
response = gets.downcase.chomp
|
||||
if(response == "y" || response == "yes")
|
||||
driver.stop
|
||||
else
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
driver.stop
|
||||
|
|
|
@ -158,6 +158,9 @@ class Driver < Msf::Ui::Driver
|
|||
# Whether or not command passthru should be allowed
|
||||
self.command_passthru = (opts['AllowCommandPassthru'] == false) ? false : true
|
||||
|
||||
# Whether or not to confirm before exiting
|
||||
self.confirm_exit = (opts['ConfirmExit'] == true) ? true : false
|
||||
|
||||
# Disables "dangerous" functionality of the console
|
||||
@defanged = opts['Defanged'] == true
|
||||
|
||||
|
@ -593,6 +596,10 @@ class Driver < Msf::Ui::Driver
|
|||
#
|
||||
attr_reader :framework
|
||||
#
|
||||
# Whether or not to confirm before exiting
|
||||
#
|
||||
attr_reader :confirm_exit
|
||||
#
|
||||
# Whether or not commands can be passed through.
|
||||
#
|
||||
attr_reader :command_passthru
|
||||
|
@ -628,6 +635,7 @@ class Driver < Msf::Ui::Driver
|
|||
protected
|
||||
|
||||
attr_writer :framework # :nodoc:
|
||||
attr_writer :confirm_exit # :nodoc:
|
||||
attr_writer :command_passthru # :nodoc:
|
||||
|
||||
#
|
||||
|
|
|
@ -101,6 +101,10 @@ class OptsConsole
|
|||
options['DisableBanner'] = true
|
||||
end
|
||||
|
||||
opts.on("-a", "--ask", "Ask before exiting Metasploit or accept 'exit -y'") do |v|
|
||||
options['ConfirmExit'] = true
|
||||
end
|
||||
|
||||
opts.on("-x", "-x <command>", "Execute the specified string as console commands (use ; for multiples)") do |s|
|
||||
options['XCommands'] ||= []
|
||||
options['XCommands'] += s.split(/\s*;\s*/)
|
||||
|
|
Loading…
Reference in New Issue