Module: Msf::Session::Basic

Overview

This class implements an interactive session using raw input/output in only the most basic fashion.

Instance Attribute Summary

Attributes included from Interactive

#rstream

Attributes included from Rex::Ui::Interactive

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

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

Instance Method Summary collapse

Methods included from Interactive

#_interact_complete, #_interrupt, #_suspend, #_usr1, #cleanup, #initialize, #interactive?, #kill, #run_cmd, #tunnel_local, #tunnel_peer, #user_want_abort?

Methods included from Rex::Ui::Interactive

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

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, #dead?, #initialize, #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

Instance Method Details

#_interactObject (protected)

Performs the actual raw interaction with the remote side. This can be overriden by derived classes if they wish to do this another way.


36
37
38
39
# File 'lib/msf/core/session/basic.rb', line 36

def _interact
  framework.events.on_session_interact(self)
  interact_stream(rstream)
end

#descObject

Description of the session.


19
20
21
# File 'lib/msf/core/session/basic.rb', line 19

def desc
  "Basic I/O"
end

#typeObject

Basic session.


26
27
28
# File 'lib/msf/core/session/basic.rb', line 26

def type
  "basic"
end