From a2aef99bb20cc0686f1b50b143ee0ddfefcd8cd7 Mon Sep 17 00:00:00 2001 From: adfoster-r7 Date: Thu, 26 Jan 2023 15:25:49 +0000 Subject: [PATCH] Fix force encoding issue on nil kerberos username --- lib/msf/core/exploit/remote/kerberos/client.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/msf/core/exploit/remote/kerberos/client.rb b/lib/msf/core/exploit/remote/kerberos/client.rb index eefdd800dd..e4069d8ecb 100644 --- a/lib/msf/core/exploit/remote/kerberos/client.rb +++ b/lib/msf/core/exploit/remote/kerberos/client.rb @@ -173,6 +173,7 @@ module Msf realm = options[:realm] server_name = options.fetch(:server_name, "krbtgt/#{realm}") client_name = options[:client_name] + client_name = client_name.dup.force_encoding('utf-8') if client_name ticket_options = options.fetch(:options) { 0x50800000 } # Forwardable, Proxiable, Renewable # The diffie hellman client parameters @@ -238,10 +239,10 @@ module Msf realm = options[:realm] server_name = options[:server_name] client_name = options[:client_name] + client_name = client_name.dup.force_encoding('utf-8') if client_name password = options[:password] - password.dup.force_encoding('utf-8') if password + password = password.dup.force_encoding('utf-8') if password key = options[:key] - client_name.dup.force_encoding('utf-8') request_pac = options.fetch(:request_pac, true) ticket_options = options.fetch(:options) { 0x50800000 } # Forwardable, Proxiable, Renewable