@@ -135,11 +135,18 @@ def detect_platform_and_arch
135135 #
136136
137137 def mssql_login ( user = 'sa' , pass = '' , db = '' , domain_name = '' )
138- if auth == Msf ::Exploit ::Remote ::AuthOption ::KERBEROS
138+ case auth
139+ when Msf ::Exploit ::Remote ::AuthOption ::AUTO
140+ if domain_name . blank?
141+ login_sql ( user , pass , db , domain_name )
142+ else
143+ login_ntlm ( user , pass , db , domain_name )
144+ end
145+ when Msf ::Exploit ::Remote ::AuthOption ::KERBEROS
139146 login_kerberos ( user , pass , db , domain_name )
140- elsif auth == Msf ::Exploit ::Remote ::AuthOption ::NTLM
147+ when Msf ::Exploit ::Remote ::AuthOption ::NTLM
141148 login_ntlm ( user , pass , db , domain_name )
142- else
149+ when Msf :: Exploit :: Remote :: AuthOption :: PLAINTEXT
143150 login_sql ( user , pass , db , domain_name )
144151 end
145152 end
@@ -465,7 +472,7 @@ def login_ntlm(user, pass, db, domain_name)
465472 info [ :login_ack ] ? true : false
466473 end
467474
468- def login_sql ( user , pass , db , domain_name )
475+ def login_sql ( user , pass , db , _domain_name )
469476 prelogin_data = mssql_prelogin
470477
471478 pkt_hdr = MsTdsHeader . new (
0 commit comments