Module: Msf::Sessions::CommandShellOptions

Included in:
Auxiliary::CommandShell
Defined in:
lib/msf/base/sessions/command_shell_options.rb

Instance Method Summary collapse

Instance Method Details

#initialize(info = {}) ⇒ Object


15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/msf/base/sessions/command_shell_options.rb', line 15

def initialize(info = {})
  super(info)

  register_advanced_options(
    [
      OptBool.new('CreateSession', [false, 'Create a new session for every successful login', true]),
      OptString.new('InitialAutoRunScript', "An initial script to run on session creation (before AutoRunScript)"),
      OptString.new('AutoRunScript', "A script to run automatically on session creation."),
      OptString.new('CommandShellCleanupCommand', "A command to run before the session is closed")
    ]
  )
end

#on_session(session) ⇒ Object


28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/msf/base/sessions/command_shell_options.rb', line 28

def on_session(session)
  super

  # Configure input/output to match the payload
  session.user_input  = self.user_input if self.user_input
  session.user_output = self.user_output if self.user_output
  if self.platform and self.platform.kind_of? Msf::Module::PlatformList
    session.platform = self.platform.platforms.first.realname.downcase
  end
  if self.platform and self.platform.kind_of? Msf::Module::Platform
    session.platform = self.platform.realname.downcase
  end

  if self.arch
    if self.arch.kind_of?(Array)
      session.arch = self.arch.join('')
    else
      session.arch = self.arch
    end
  end

end