def msf_rpc_get_temp_auth_token():
"""Get a temporary authentication token from the Metasploit RPC Server"""
global msfRpcToken
payload = msgpack.packb(["auth.login", msfRpcUser, msfRpcPass])
response = msf_rpc_request(payload)
if response is not None:
if DEBUG:
print debug + "MSF RPC auth.login response:\n\tHTTP Status Code: %s" % response.status_code
if response.headers['Content-Type'] == "binary/message-pack":
msf_rpc_message = msgpack.unpackb(response.content, use_list=False)
print "\t" + debug + "MSF RPC Server Response: %s" % msf_rpc_message
if 'error' in msf_rpc_message.keys():
print debug + "MSF RPC Error: %s" % msf_rpc_message['error_message']
else:
print "\t" + debug + "HTTP Server Response: %s" % response.content
if response.status_code == 200:
result = msgpack.unpackb(response.content, use_list=False)
if 'error' in result.keys():
print warn + "MSF RPC Error: %s" % result['error_message']
print warn + "Quitting"
sys.exit()
elif 'token' in result.keys():
msfRpcToken = result['token']
评论列表
文章目录