Add error handling to get_once

And check for specific ack result/reason for 32-bit.
bug/bundler_fix
William Vu 2017-05-29 22:28:50 -05:00
parent 6e253a5be7
commit a781480e89
1 changed files with 10 additions and 2 deletions

View File

@ -269,7 +269,14 @@ class MetasploitModule < Msf::Exploit::Remote
)
sock.put(pkt)
res = sock.get_once
begin
res = sock.get_once(60)
rescue EOFError
print_error('DCE/RPC socket returned EOFError')
return false
end
disconnect(sock)
begin
@ -287,7 +294,8 @@ class MetasploitModule < Msf::Exploit::Remote
end
when ARCH_X86
# Ack result: Provider rejection (2)
if resp.ack_result.first != 0
# Ack reason: Proposed transfer syntaxes not supported (2)
if resp.ack_result.first == 2 && resp.ack_reason.first == 2
ret = true
end
end