65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# File 'lib/metasploit/aggregator/connection_manager.rb', line 65
def add_cable_https(host, port, certificate)
@manager_mutex.synchronize do
forwarder = Metasploit::Aggregator::HttpsForwarder.new
forwarder.log_messages = true
server = TCPServer.new(host, port)
ssl_context = OpenSSL::SSL::SSLContext.new
unless certificate.nil?
ssl_context.key, ssl_context.cert = ssl_parse_certificate(certificate)
else
ssl_context.key, ssl_context.cert = Metasploit::Aggregator::ConnectionManager.ssl_generate_certificate
end
ssl_server = OpenSSL::SSL::SSLServer.new(server, ssl_context)
handler = connect_cable(ssl_server, host, port, forwarder)
@cables << Cable.new(handler, server, forwarder)
handler
end
end
|