2019-06-02 17:11:37 -05:00
|
|
|
# -*- coding: binary -*-
|
|
|
|
|
|
2019-06-02 19:59:06 -05:00
|
|
|
# Require most things so that modules using this will "just work"
|
|
|
|
|
require 'net/ssh'
|
|
|
|
|
require 'net/ssh/command_stream'
|
|
|
|
|
require 'rex/socket/ssh_factory'
|
|
|
|
|
require 'msf/core/exploit/ssh/options'
|
|
|
|
|
require 'msf/core/exploit/ssh/auth_methods'
|
2018-09-05 23:10:28 -05:00
|
|
|
|
2019-06-02 19:59:06 -05:00
|
|
|
module Msf::Exploit::Remote::SSH
|
2018-09-05 23:10:28 -05:00
|
|
|
|
2019-06-02 17:11:37 -05:00
|
|
|
# Register SSH datastore options:
|
2019-06-02 18:26:25 -05:00
|
|
|
# SSH_IDENT (TODO: Refactor to SSHIdent)
|
2019-06-02 17:11:37 -05:00
|
|
|
# SSH_TIMEOUT (TODO: Refactor to SSHTimeout)
|
|
|
|
|
# SSH_DEBUG (TODO: Refactor to SSHDebug)
|
|
|
|
|
include Msf::Exploit::Remote::SSH::Options
|
2018-09-05 23:10:28 -05:00
|
|
|
|
2019-06-02 17:11:37 -05:00
|
|
|
# Patch in our custom auth methods:
|
2018-09-05 23:10:28 -05:00
|
|
|
# malformed-packet
|
|
|
|
|
# fortinet-backdoor
|
|
|
|
|
include Msf::Exploit::Remote::SSH::AuthMethods
|
|
|
|
|
|
2019-06-02 17:11:37 -05:00
|
|
|
def ssh_socket_factory
|
|
|
|
|
Rex::Socket::SSHFactory.new(framework, self, datastore['Proxies'])
|
|
|
|
|
end
|
|
|
|
|
|
2016-07-19 16:37:19 -05:00
|
|
|
end
|