Как проверить SSL сертификат в модуле pyMetasploit? - PullRequest
0 голосов
/ 01 февраля 2019

Я использую модуль pyMetasploit для удаленного доступа к metasploit msfconsole, используя пример, показанный в ссылке https://github.com/allfro/pymetasploit, и я скачал metasploit из https://github.com/rapid7/metasploit-framework/wiki/Nightly-Installers

, когда попытался подключитьсяЯ получаю ошибку сертификата SSL, как ее решить?

слушатель RPC создан с помощью следующей команды

 msfrpcd -P password -n -f -a 127.0.0.1



 from metasploit.msfrpc import MsfRpcClient

 client = MsfRpcClient('password')

я получил ошибку как

 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/home/user1/.local/lib/python2.7/site-packages/metasploit/msfrpc.py", line 207, in __init__
  self.login(kwargs.get('username', 'msf'), password)
 File "/home/user1/.local/lib/python2.7/site-packages/metasploit/msfrpc.py", line 309, in login
  r = self.call(MsfRpcMethod.AuthLogin, username, password)
 File "/home/user1/.local/lib/python2.7/site-packages/metasploit/msfrpc.py", line 224, in call
  self.client.request('POST', self.uri, packb(l), self._headers)
 File "/usr/lib/python2.7/httplib.py", line 1057, in request
  self._send_request(method, url, body, headers)
 File "/usr/lib/python2.7/httplib.py", line 1097, in _send_request
  self.endheaders(body)
 File "/usr/lib/python2.7/httplib.py", line 1053, in endheaders
  self._send_output(message_body)
 File "/usr/lib/python2.7/httplib.py", line 897, in _send_output
  self.send(msg)
 File "/usr/lib/python2.7/httplib.py", line 859, in send
  self.connect()
 File "/usr/lib/python2.7/httplib.py", line 1278, in connect
  server_hostname=server_hostname)
 File "/usr/lib/python2.7/ssl.py", line 353, in wrap_socket
  _context=self)
 File "/usr/lib/python2.7/ssl.py", line 601, in __init__
  self.do_handshake()
 File "/usr/lib/python2.7/ssl.py", line 830, in do_handshake
  self._sslobj.do_handshake()

1 Ответ

0 голосов
/ 03 февраля 2019

, перейдя по ссылке: https://github.com/allfro/pymetasploit/issues/10 Я нашел следующий код, он работал для меня.

 import ssl
 try:
     _create_unverified_https_context = ssl._create_unverified_context
 except AttributeError:
     pass
 else:
     ssl._create_default_https_context = _create_unverified_https_context

 from metasploit.msfrpc import MsfRpcClient
 client = MsfRpcClient('password')
...