samba dc ntlm netlogin issue with windows 10/11 2023-07 cumulative update
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
samba |
Unknown
|
Unknown
|
||||
samba (Debian) |
Fix Released
|
Unknown
|
||||
samba (Ubuntu) | Status tracked in Mantic | |||||
Focal |
Fix Released
|
High
|
Andreas Hasenack | |||
Jammy |
Fix Released
|
High
|
Andreas Hasenack | |||
Kinetic |
Won't Fix
|
High
|
Andreas Hasenack | |||
Lunar |
Fix Released
|
High
|
Andreas Hasenack | |||
Mantic |
Fix Released
|
High
|
Andreas Hasenack |
Bug Description
[ Impact ]
Windows update KB5028166[1] broke the secure channel in trust relationships between windows workstations and samba domain controllers.
This manifests itself in widespread domain users authentication problems, most notably remote desktop access.
[ Test Plan ]
This testplan requires a windows 10 or 11 machine joined to a samba AD DC controller. Windows should be fully up-do-date. In particular, KB5028166[1] must be installed.
There are two test cases described here: a simple one, with a very specific check that requires just one command on the windows powershell interface, and a more elaborate one that contains a user story involving remote desktop.
a) Test Secure Channel between windows and the domain controller[2]
- open a powershell window
- run this command:
Test-
With an unpatched samba AD DC controller, the output of the above command will be "False" and report a broken secure channel:
"""
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https:/
PS C:\Users\ubuntu> Test-ComputerSe
VERBOSE: Performing the operation "Test-ComputerS
False
VERBOSE: The secure channel between the local computer and the domain samba.example is broken.
"""
With the samba AD DC controller patched with this update, the output will be "True" and report a good secure channel:
"""
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https:/
PS C:\Users\ubuntu> Test-ComputerSe
VERBOSE: Performing the operation "Test-ComputerS
True
VERBOSE: The secure channel between the local computer and the domain samba.example is in good condition.
"""
b) Access the windows machine via remote desktop
- on the windows machine, enable remote desktop services for the domain users. Be sure to allow it for the user you want to use for the test. Also make sure NLA (Network Level Authentication) is enabled (it's the default, but check)
- logout from windows
- from another ubuntu system that can reach the windows machine on port 3389, and it doesn't have to have any relationship with the domain, install vinagre:
sudo apt install vinagre
- Launch it from the terminal (not the desktop launcher). We want to see its log messates, and they will show up in the terminal it was launched from.
- click connect, select the RDP protocol, and type in the IP of the windows machine and the domain user credentials
With an unpatched samba AD DC controller, the connection will fail, and the terminal where vinagre was launched from will print this error message:
[11:02:48:250] [2029009:2029009] [WARN][
The key here is that the trust relationship is broken.
- With a patched samba AD DC controller, the remote desktop connection will accept the credentials and work.
1. https:/
2. https:/
[ Where problems could occur ]
The patches went through some iterations, but have stabilized now and are committed to samba upstream. There is more work to be done (https:/
Problems that can happen here are, in no particular order:
- break domain trust entirely
- Microsoft publishes another patch in reaction to this which changes behavior once again
- more follow-up fixes are necessary
[ Other Info ]
Given the urgency of this fix, I published a PPA and this bug report has comments stating that real life deployments were fixed by this update.
[Original Description]
This bug is just a reminder/link to upstream bug https:/
The impact of this issue is that a windows 10/11 machine joined to a samba ad dc domain will not allow ntlm based logins (ex. freerdp, shared folders on the windows 10 machine) using domain accounts
There is already a solution to this problem. The importance is tagged as critical, so I guess a possible fix will land in master soon.
For ubuntu we will very probably need a sru for all supported lts releases
Related branches
- git-ubuntu bot: Approve
- Lucas Kanashiro (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 875 lines (+833/-0)6 files modifieddebian/changelog (+27/-0)
debian/patches/secure-channel-faulty-kb5028166.patch (+215/-0)
debian/patches/series (+1/-0)
debian/tests/control (+4/-0)
debian/tests/samba-ad-dc-provisioning-internal-dns (+408/-0)
debian/tests/util (+178/-0)
- git-ubuntu bot: Approve
- Lucas Kanashiro (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 805 lines (+753/-1)6 files modifieddebian/changelog (+18/-0)
debian/patches/secure-channel-faulty-kb5028166.patch (+215/-0)
debian/patches/series (+1/-0)
debian/tests/control (+4/-0)
debian/tests/samba-ad-dc-provisioning-internal-dns (+404/-0)
debian/tests/util (+111/-1)
- git-ubuntu bot: Approve
- Lucas Kanashiro (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 248 lines (+226/-0)3 files modifieddebian/changelog (+7/-0)
debian/patches/secure-channel-faulty-kb5028166.patch (+218/-0)
debian/patches/series (+1/-0)
- git-ubuntu bot: Approve
- Lucas Kanashiro (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 3405 lines (+3029/-6)5 files modifieddebian/changelog (+2510/-0)
debian/control (+6/-5)
debian/tests/control (+4/-0)
debian/tests/samba-ad-dc-provisioning-internal-dns (+398/-0)
debian/tests/util (+111/-1)
CVE References
Changed in samba (Ubuntu): | |
importance: | Undecided → High |
assignee: | nobody → Andreas Hasenack (ahasenack) |
tags: | added: server-todo |
Changed in samba (Ubuntu Lunar): | |
status: | New → In Progress |
importance: | Undecided → High |
Changed in samba (Ubuntu Lunar): | |
assignee: | nobody → Andreas Hasenack (ahasenack) |
Changed in samba (Ubuntu Kinetic): | |
status: | New → In Progress |
importance: | Undecided → High |
assignee: | nobody → Andreas Hasenack (ahasenack) |
Changed in samba (Ubuntu Jammy): | |
status: | New → In Progress |
importance: | Undecided → High |
assignee: | nobody → Andreas Hasenack (ahasenack) |
Changed in samba (Ubuntu Focal): | |
status: | New → In Progress |
importance: | Undecided → High |
assignee: | nobody → Andreas Hasenack (ahasenack) |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
Changed in samba (Ubuntu Jammy): | |
status: | In Progress → Fix Committed |
status: | Fix Committed → In Progress |
Changed in samba (Ubuntu Jammy): | |
status: | Fix Committed → Fix Released |
Changed in samba (Debian): | |
status: | Unknown → Fix Released |
Status changed to 'Confirmed' because the bug affects multiple users.