diff --git a/lib/msf/ui/console/command_dispatcher/core.rb b/lib/msf/ui/console/command_dispatcher/core.rb index 7661b45448..33f51c29a4 100644 --- a/lib/msf/ui/console/command_dispatcher/core.rb +++ b/lib/msf/ui/console/command_dispatcher/core.rb @@ -224,8 +224,8 @@ class Core driver.destack_dispatcher # Restore the prompt - prompt = framework.datastore['Prompt'] - prompt_char = framework.datastore['PromptChar'] + prompt = framework.datastore['Prompt'] || "%undmsf%clr " + prompt_char = framework.datastore['PromptChar'] || ">" driver.update_prompt("#{prompt}", prompt_char, true) end end @@ -1968,8 +1968,8 @@ class Core mod.init_ui(driver.input, driver.output) # Update the command prompt - prompt = framework.datastore['Prompt'] - prompt_char = framework.datastore['PromptChar'] + prompt = framework.datastore['Prompt'] || "%undmsf%clr " + prompt_char = framework.datastore['PromptChar'] || ">" driver.update_prompt("#{prompt} #{mod.type}(%bld%red#{mod.shortname}%clr) ", prompt_char, true) end diff --git a/lib/rex/ui/text/shell.rb b/lib/rex/ui/text/shell.rb index 9d38da143f..85d99ca146 100644 --- a/lib/rex/ui/text/shell.rb +++ b/lib/rex/ui/text/shell.rb @@ -177,6 +177,7 @@ module Shell input.prompt.gsub!(/%J/, framework.jobs.count.to_s) input.prompt.gsub!(/%L/, Rex::Socket.source_address("50.50.50.50")) input.prompt.gsub!(/%D/, ::Dir.getwd) + self.init_prompt = input.prompt end line = input.pgets()