Bug 11222 - SMBsesssetupX removing "w" from usernames
Summary: SMBsesssetupX removing "w" from usernames
Status: RESOLVED FIXED
Alias: None
Product: Samba 3.6
Classification: Unclassified
Component: Winbind (show other bugs)
Version: 3.6.25
Hardware: Sparc Solaris
: P5 major
Target Milestone: ---
Assignee: Michael Adam
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-17 13:07 UTC by Matt
Modified: 2015-04-30 12:39 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt 2015-04-17 13:07:44 UTC
Hello,

I ran across this problem that seems to be a bug. I currently have a SR open with Oracle to see if they have encountered this problem.

Environment:
Solaris 10 Update 5 running Samba 3.6.25 updated using Oracle patch 119757-34.
Windows 7 client
Windows 2008 R2

Issue:
User account contains any word that has a "w" (ie: power, wrong, wpooh, etc). When user logins to the Windows 7 client and tries to map the Samba share on the Solaris 10 server it comes up with the username and password prompt. Entering the username and password does not work. I can enter any other username and password that I have access to and it works.
When trying to automount it using DFS it states the following error;
Logon Failure: Unknown username or bad password

How to reproduce:
Create a Active Directory and LDAP user account with a lower case "w" in it and try to mount a share from the Samba server.

One work around is to add the username to the local smbpasswd database.
Another work around is to change the username in Active Directory to use a upper case "W" (ie: poWer, Wrong, Wpooh, etc) and this will also the use to map the samba share.


smb log:

[2015/04/13 10:46:48,  3] ../libcli/auth/ntlmssp_server.c:348(ntlmssp_server_preauth)
  Got user=[wpooh] domain=[DOMAIN_NAME] workstation=[Windows7_Workstation] len1=24 len2=24
[2015/04/13 10:46:48,  0] ../lib/util/debug.c:571(reopen_logs_internal)
  Unable to open new log file '/var/samba/log/': Is a directory
[2015/04/13 10:46:48,  3] auth/auth.c:219(check_ntlm_password)
  check_ntlm_password:  Checking password for unmapped user [DOMAIN_NAME]\[wpooh]@[Windows7_Workstation] with the new password interface
[2015/04/13 10:46:48,  3] auth/auth.c:222(check_ntlm_password)
  check_ntlm_password:  mapped user is: [SOLARIS10_SERVER]\[wpooh]@[Windows7_Workstation]
[2015/04/13 10:46:48,  3] auth/check_samsec.c:399(check_sam_security)
  check_sam_security: Couldn't find user 'wpooh' in passdb.
[2015/04/13 10:46:48,  3] libsmb/cliconnect.c:2082(cli_session_setup)
  cli_session_setup: NT1 session setup failed: NT_STATUS_LOGON_FAILURE
[2015/04/13 10:46:48,  3] libsmb/cliconnect.c:2082(cli_session_setup)
  cli_session_setup: NT1 session setup failed: NT_STATUS_LOGON_FAILURE
[2015/04/13 10:46:48,  1] auth/auth_server.c:433(check_smbserver_security)
  password server WINDOWS_SERVER rejected the password: NT_STATUS_LOGON_FAILURE
[2015/04/13 10:46:48,  2] auth/auth.c:319(check_ntlm_password)
  check_ntlm_password:  Authentication for user [wpooh] -> [wpooh] FAILED with error NT_STATUS_LOGON_FAILURE
[2015/04/13 10:46:48,  3] smbd/error.c:81(error_packet_set)
  error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX) NT_STATUS_LOGON_FAILURE


Snoop output:
	
398 0.00023 Windows_Active_Directory -> Samba_Server SMB R port=50967
399 0.00003 Samba_Server -> Windows_Active_Directory SMB C port=50967
400 0.00041 Samba_Server -> Windows_Active_Directory SMB C Code=0x72 Name=SMBnegprot LastDialect=NT LM 0.12 Error=0
401 0.00023 Windows_Active_Directory -> Samba_Server SMB R Code=0x72 Name=SMBnegprot Dialect#=9 Error=0
402 0.00002 Samba_Server -> Windows_Active_Directory SMB C port=50967
403 0.00025 Samba_Server -> Windows_Active_Directory SMB C Code=0x73 Name=SMBsesssetupX Username= Error=0
404 0.00012 Windows_Active_Directory -> Samba_Server SMB R Code=0x73 Name=SMBsesssetupX Error=0
405 0.00002 Samba_Server -> Windows_Active_Directory SMB C port=50967
406 0.00125 Samba_Server -> Windows_Active_Directory SMB C Code=0x73 Name=SMBsesssetupX Username=sambatestSamba_Server Error=0
407 0.00092 Windows_Active_Directory -> Samba_Server SMB R Code=0x73 Name=SMBsesssetupX Error=0
408 0.00011 Samba_Server -> Windows_Active_Directory SMB C Code=0x73 Name=SMBsesssetupX Username=pooh Error=0
409 0.00076 Windows_Active_Directory -> Samba_Server SMB R Code=0x73 Name=SMBsesssetupX Error=0
410 0.00008 Samba_Server -> Windows_Active_Directory SMB C Code=0x74 Name=SMBuloggoffX Error=0
411 0.00010 Windows_Active_Directory -> Samba_Server SMB R Code=0x74 Name=SMBuloggoffX Error=0
412 0.00008 Samba_Server -> Windows_Active_Directory SMB C port=50967
413 0.00007 Windows_Active_Directory -> Samba_Server SMB R port=50967
414 0.00005 Windows_Active_Directory -> Samba_Server SMB R port=50967


As you can see snoop shows that the "w" is removed from the username.

I found this bug report from 2010 (https://bugzilla.samba.org/show_bug.cgi?id=7429) that shows a very similar problem. It was never resolved except when the user reverted to an older version of Samba.

We have a RHEL 6.3 server running Samba 3.5.10 and it does not have this issue.
Comment 1 Volker Lendecke 2015-04-17 13:39:23 UTC
Please retry with a supported version of Samba. 3.6 went out of support with the release of 4.2. Thanks,

Volker
Comment 2 Matt 2015-04-17 13:42:13 UTC
Is there a package of Samba 4.2 available that works with Solaris 10? Or would it need to be built from source?
Comment 3 Volker Lendecke 2015-04-17 13:45:05 UTC
(In reply to Matt from comment #2)

The Samba Team does not provide Binaries, but we will of course fix anything that prevents you from compiling on Solaris. Also, there's 

https://www.samba.org/samba/support/

available if Oracle is not able to resolve the issue for you.

Volker