Class: Msf::Sessions::PostgreSQL

Inherits:
Sql
  • Object
show all
Defined in:
lib/msf/base/sessions/postgresql.rb

Instance Attribute Summary

Attributes inherited from Sql

#arch, #client, #console, #platform

Attributes included from Msf::Session::Interactive

#rstream

Attributes included from Rex::Ui::Interactive

#completed, #interacting, #next_session, #on_command_proc, #on_print_proc, #on_run_command_error_proc, #orig_suspend, #orig_usr1, #orig_winch

Attributes included from Rex::Ui::Subscriber::Input

#user_input

Attributes included from Rex::Ui::Subscriber::Output

#user_output

Attributes included from Msf::Session

#alive, #db_record, #exploit, #exploit_datastore, #exploit_task, #exploit_uuid, #framework, #info, #machine_id, #payload_uuid, #routes, #sid, #sname, #target_host, #target_port, #username, #uuid, #via, #workspace

Attributes included from Framework::Offspring

#framework

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Sql

#_interact, #_interact_stream, #address, #execute_file, #exit, #init_ui, #port, #process_autoruns, #reset_ui, #run_cmd, #type

Methods included from Scriptable

#execute_file, #execute_script, included, #legacy_script_to_post_module

Methods included from Msf::Session::Basic

#_interact, #type

Methods included from Msf::Session::Interactive

#_interact, #_interact_complete, #_interrupt, #_suspend, #_usr1, #abort_foreground, #abort_foreground_supported, #cleanup, #comm_channel, #interactive?, #kill, #run_cmd, #tunnel_local, #tunnel_peer, #user_want_abort?

Methods included from Rex::Ui::Interactive

#_interact, #_interact_complete, #_interrupt, #_local_fd, #_remote_fd, #_stream_read_local_write_remote, #_stream_read_remote_write_local, #_suspend, #_winch, #detach, #handle_suspend, #handle_usr1, #handle_winch, #interact, #interact_stream, #prompt, #prompt_yesno, #restore_suspend, #restore_usr1, #restore_winch

Methods included from Rex::Ui::Subscriber

#copy_ui, #init_ui, #reset_ui

Methods included from Rex::Ui::Subscriber::Input

#gets

Methods included from Rex::Ui::Subscriber::Output

#flush, #print, #print_blank_line, #print_error, #print_good, #print_line, #print_status, #print_warning

Methods included from Msf::Session

#alive?, #cleanup, #comm_channel, #dead?, #inspect, #interactive?, #kill, #log_file_name, #log_source, #name, #name=, #register?, #session_host, #session_host=, #session_port, #session_port=, #session_type, #set_from_exploit, #set_via, #tunnel_local, #tunnel_peer, #tunnel_to_s, #type, #via_exploit, #via_payload

Constructor Details

#initialize(rstream, opts = {}) ⇒ PostgreSQL

@param rstream

Parameters:

  • opts (Hash) (defaults to: {})
  • opts (Msf::Db::PostgresPR::Connection) (defaults to: {})

    :client



10
11
12
13
14
15
16
# File 'lib/msf/base/sessions/postgresql.rb', line 10

def initialize(rstream, opts = {})
  @client = opts.fetch(:client)
  self.platform = opts.fetch(:platform)
  self.arch = opts.fetch(:arch)
  @console = ::Rex::Post::PostgreSQL::Ui::Console.new(self)
  super(rstream, opts)
end

Class Method Details

.can_cleanup_filesBoolean

Returns Can the session clean up after itself.

Returns:

  • (Boolean)

    Can the session clean up after itself



34
35
36
# File 'lib/msf/base/sessions/postgresql.rb', line 34

def self.can_cleanup_files
  false
end

.typeString

Returns The type of the session.

Returns:

  • (String)

    The type of the session



28
29
30
# File 'lib/msf/base/sessions/postgresql.rb', line 28

def self.type
  'postgresql'
end

Instance Method Details

#bootstrap(datastore = {}, handler = nil) ⇒ Object



18
19
20
21
22
23
# File 'lib/msf/base/sessions/postgresql.rb', line 18

def bootstrap(datastore = {}, handler = nil)
  session = self
  session.init_ui(user_input, user_output)

  @info = "PostgreSQL #{datastore['USERNAME']} @ #{@peer_info}"
end

#descString

Returns The session description.

Returns:

  • (String)

    The session description



41
42
43
# File 'lib/msf/base/sessions/postgresql.rb', line 41

def desc
  'PostgreSQL'
end