1 ==============================
2 Release Notes for Samba 4.19.2
4 ==============================
7 This is the latest stable release of the Samba 4.19 release series.
13 o Jeremy Allison <jra@samba.org>
14 * BUG 15423: Use-after-free in aio_del_req_from_fsp during smbd shutdown
15 after failed IPC FSCTL_PIPE_TRANSCEIVE.
16 * BUG 15426: clidfs.c do_connect() missing a "return" after a cli_shutdown()
19 o Ralph Boehme <slow@samba.org>
20 * BUG 15463: macOS mdfind returns only 50 results.
22 o Volker Lendecke <vl@samba.org>
23 * BUG 15481: GETREALFILENAME_CACHE can modify incoming new filename with
24 previous cache entry value.
26 o Stefan Metzmacher <metze@samba.org>
27 * BUG 15464: libnss_winbind causes memory corruption since samba-4.18,
28 impacts sendmail, zabbix, potentially more.
30 o Martin Schwenke <mschwenke@ddn.com>
31 * BUG 15479: ctdbd: setproctitle not initialized messages flooding logs.
33 o Joseph Sutton <josephsutton@catalyst.net.nz>
34 * BUG 15491: CVE-2023-5568 Heap buffer overflow with freshness tokens in the
35 Heimdal KDC in Samba 4.19
36 * BUG 15477: The heimdal KDC doesn't detect s4u2self correctly when fast is
40 #######################################
41 Reporting bugs & Development Discussion
42 #######################################
44 Please discuss this release on the samba-technical mailing list or by
45 joining the #samba-technical:matrix.org matrix room, or
46 #samba-technical IRC channel on irc.libera.chat.
48 If you do report problems then please try to send high quality
49 feedback. If you don't provide vital information to help us track down
50 the problem then you will probably be ignored. All bug reports should
51 be filed under the Samba 4.1 and newer product in the project's Bugzilla
52 database (https://bugzilla.samba.org/).
55 ======================================================================
56 == Our Code, Our Bugs, Our Responsibility.
58 ======================================================================
61 Release notes for older releases follow:
62 ----------------------------------------
63 ==============================
64 Release Notes for Samba 4.19.1
66 ==============================
69 This is a security release in order to address the following defects:
72 o CVE-2023-3961: Unsanitized pipe names allow SMB clients to connect as root to
73 existing unix domain sockets on the file system.
74 https://www.samba.org/samba/security/CVE-2023-3961.html
76 o CVE-2023-4091: SMB client can truncate files to 0 bytes by opening files with
77 OVERWRITE disposition when using the acl_xattr Samba VFS
78 module with the smb.conf setting
79 "acl_xattr:ignore system acls = yes"
80 https://www.samba.org/samba/security/CVE-2023-4091.html
82 o CVE-2023-4154: An RODC and a user with the GET_CHANGES right can view all
83 attributes, including secrets and passwords. Additionally,
84 the access check fails open on error conditions.
85 https://www.samba.org/samba/security/CVE-2023-4154.html
87 o CVE-2023-42669: Calls to the rpcecho server on the AD DC can request that the
88 server block for a user-defined amount of time, denying
90 https://www.samba.org/samba/security/CVE-2023-42669.html
92 o CVE-2023-42670: Samba can be made to start multiple incompatible RPC
93 listeners, disrupting service on the AD DC.
94 https://www.samba.org/samba/security/CVE-2023-42670.html
100 o Jeremy Allison <jra@samba.org>
101 * BUG 15422: CVE-2023-3961.
103 o Andrew Bartlett <abartlet@samba.org>
104 * BUG 15424: CVE-2023-4154.
105 * BUG 15473: CVE-2023-42670.
106 * BUG 15474: CVE-2023-42669.
108 o Ralph Boehme <slow@samba.org>
109 * BUG 15439: CVE-2023-4091.
112 #######################################
113 Reporting bugs & Development Discussion
114 #######################################
116 Please discuss this release on the samba-technical mailing list or by
117 joining the #samba-technical:matrix.org matrix room, or
118 #samba-technical IRC channel on irc.libera.chat.
120 If you do report problems then please try to send high quality
121 feedback. If you don't provide vital information to help us track down
122 the problem then you will probably be ignored. All bug reports should
123 be filed under the Samba 4.1 and newer product in the project's Bugzilla
124 database (https://bugzilla.samba.org/).
127 ======================================================================
128 == Our Code, Our Bugs, Our Responsibility.
130 ======================================================================
133 ----------------------------------------------------------------------
134 ==============================
135 Release Notes for Samba 4.19.0
137 ==============================
139 This is the first stable release of the Samba 4.19 release series.
140 Please read the release notes carefully before upgrading.
145 Migrated smbget to use common command line parser
146 -------------------------------------------------
148 The smbget utility implemented its own command line parsing logic. After
149 discovering an issue we decided to migrate it to use the common command line
150 parser. This has some advantages as you get all the feature it provides like
151 Kerberos authentication. The downside is that breaks the options interface.
152 The support for smbgetrc has been removed. You can use an authentication file
153 if needed, this is documented in the manpage.
155 Please check the smbget manpage or --help output.
160 The libgpo.get_gpo_list function has been deprecated in favor of
161 an implementation written in python. The new function can be imported via
162 `import samba.gp`. The python implementation connects to Active Directory
163 using the SamDB module, instead of ADS (which is what libgpo uses).
165 Improved winbind logging and a new tool for parsing the winbind logs
166 --------------------------------------------------------------------
168 Winbind logs (if smb.conf 'winbind debug traceid = yes' is set) contain new
169 trace header fields 'traceid' and 'depth'. Field 'traceid' allows to track the
170 trace records belonging to the same request. Field 'depth' allows to track the
171 request nesting level. A new tool samba-log-parser is added for better log
174 AD database prepared to FL 2016 standards for new domains
175 ---------------------------------------------------------
177 While Samba still provides only Functional Level 2008R2 by default,
178 Samba as an AD DC will now, in provision ensure that the blank
179 database is already prepared for Functional Level 2016, with AD Schema
182 This preparation is of the default objects in the database, adding
183 containers for Authentication Policies, Authentication Silos and AD
184 claims in particular. These DB objects must be updated to allow
185 operation of the new features found in higher functional levels.
187 Kerberos Claims, Authentication Silos and NTLM authentication policies
188 ----------------------------------------------------------------------
190 An initial, partial implementation of Active Directory Functional
191 Level 2012, 2012R2 and 2016 is available in this release.
193 In particular Samba will issue Active Directory "Claims" in the PAC,
194 for member servers that support these, and honour in-directory
195 configuration for Authentication Policies and Authentication Silos.
197 The primary limitation is that while Samba can read and write claims
198 in the directory, and populate the PAC, Samba does not yet use them
199 for access control decisions.
201 While we continue to develop these features, existing domains can
202 test the feature by selecting the functional level in provision or
203 raising the DC functional level by setting
205 ad dc functional level = 2016
209 The smb.conf file on each DC must have 'ad dc functional level = 2016'
210 set to have the partially complete feature available. This will also,
211 at first startup, update the server's own AD entry with the configured
214 For new domains, add these parameters to 'samba-tool provision'
216 --option="ad dc functional level = 2016" --function-level=2016
218 The second option, setting the overall domain functional level
219 indicates that all DCs should be at this functional level.
221 To raise the domain functional level of an existing domain, after
222 updating the smb.conf and restarting Samba run
223 samba-tool domain schemaupgrade --schema=2019
224 samba-tool domain functionalprep --function-level=2016
225 samba-tool domain level raise --domain-level=2016 --forest-level=2016
227 Improved KDC Auditing
228 ---------------------
230 As part of the auditing required to allow successful deployment of
231 Authentication Policies and Authentication Silos, our KDC now provides
232 Samba-style JSON audit logging of all issued Kerberos tickets,
233 including if they would fail a policy that is not yet enforced.
234 Additionally most failures are audited, (after the initial
235 pre-validation of the request).
237 Kerberos Armoring (FAST) Support for Windows clients
238 ----------------------------------------------------
240 In domains where the domain controller functional level is set, as
241 above, to 2012, 2012_R2 or 2016, Windows clients will, if configured
242 via GPO, use FAST to protect user passwords between (in particular) a
243 workstation and the KDC on the AD DC. This is a significant security
244 improvement, as weak passwords in an AS-REQ are no longer available
247 Claims compression in the AD PAC
248 --------------------------------
250 Samba as an AD DC will compress "AD claims" using the same compression
251 algorithm as Microsoft Windows.
253 Resource SID compression in the AD PAC
254 --------------------------------------
256 Samba as an AD DC will now correctly populate the various PAC group
257 membership buffers, splitting global and local groups correctly.
259 Additionally, Samba marshals Resource SIDs, being local groups in the
260 member server's own domain, to only consume a header and 4 bytes per
261 group in the PAC, not a full-length SID worth of space each. This is
262 known as "Resource SID compression".
264 Resource Based Constrained Delegation (RBCD) support in both MIT and Heimdal
265 -----------------------------------------------------------------------------
267 Samba AD DC built with MIT Kerberos (1.20 and later) has offered RBCD
268 support since Samba 4.17. Samba 4.19 brings this feature to the
271 Samba 4.17 added to samba-tool delegation the 'add-principal' and
272 'del-principal' subcommands in order to manage RBCD, and the database
273 changes made by these tools are now honoured by the Heimdal KDC once
276 Likewise, now both MIT (1.20 and later) and Heimdal KDCs add the
277 Asserted Identity [1] SID into the PAC for constrained delegation.
279 [1] https://docs.microsoft.com/en-us/windows-server/security/kerberos/kerberos-constrained-delegation-overview
281 New samba-tool support for silos, claims, sites and subnets.
282 ------------------------------------------------------------
284 samba-tool can now list, show, add and manipulate Authentication Silos
285 (silos) and Active Directory Authentication Claims (claims).
287 samba-tool can now list and show Active Directory sites and subnets.
289 A new Object Relational Model (ORM) based architecture, similar to
290 that used with Django, has been built to make adding new samba-tool
291 subcommands simpler and more consistent, with JSON output available
292 standard on these new commands.
294 Updated GnuTLS requirement / in-tree cryptography removal
295 ----------------------------------------------------------
297 Samba requires GnuTLS 3.6.13 and prefers GnuTLS 3.6.14 or later.
299 This has allowed Samba to remove all of our in-tree cryptography,
300 except that found in our Heimdal import. Samba's runtime cryptography
301 needs are now all provided by GnuTLS.
303 (The GnuTLS vesion requirement is raised to 3.7.2 on systems without
304 the Linux getrandom())
306 We also use Python's cryptography module for our testing.
308 The use of well known cryptography libraries makes Samba easier for
309 end-users to validate and deploy, and for distributors to ship. This
310 is the end of a very long journey for Samba.
312 Updated Heimdal import
313 ----------------------
315 Samba's Heimdal branch (known as lorikeet-heimdal) has been updated to
316 the current pre-8.0 (master) tree from upstream Heimdal, ensuring that
317 this vendored copy, included in our release remains as close as
318 possible to the current upstream code.
320 Revocation support in Heimdal KDC for PKINIT certificates
321 ---------------------------------------------------------
323 Samba will now correctly honour the revocation of 'smart card'
324 certificates used for PKINIT Kerberos authentication.
326 This list is reloaded each time the file changes, so no further action
327 other than replacing the file is required. The additional krb5.conf
331 pkinit_revoke = FILE:/path/to/crl.pem
333 Information on the "Smart Card login" feature as a whole is at:
334 https://wiki.samba.org/index.php/Samba_AD_Smart_Card_Login
336 Protocol level testsuite for (Smart Card Logon) PKINIT
337 ------------------------------------------------------
339 Previously Samba's PKINIT support in the KDC was tested by use of
340 shell scripts around the client tools of MIT or Heimdal Kerberos.
341 Samba's independently written python testsuite has been extended to
342 validate KDC behaviour for PKINIT.
344 Require encrypted connection to modify unicodePwd on the AD DC
345 --------------------------------------------------------------
347 Setting the password on an AD account on should never be attempted
348 over a plaintext or signed-only LDAP connection. If the unicodePwd
349 (or userPassword) attribute is modified without encryption (as seen by
350 Samba), the request will be rejected. This is to encourage the
351 administrator to use an encrypted connection in the future.
353 NOTE WELL: If Samba is accessed via a TLS frontend or load balancer,
354 the LDAP request will be regarded as plaintext.
356 Samba AD TLS Certificates can be reloaded
357 -----------------------------------------
359 The TLS certificates used for Samba's AD DC LDAP server were
360 previously only read on startup, and this meant that when then expired
361 it was required to restart Samba, disrupting service to other users.
363 smbcontrol ldap_server reload-certs
365 This will now allow these certificates to be reloaded 'on the fly'
375 Parameter Name Description Default
376 -------------- ----------- -------
377 winbind debug traceid Add traceid No
378 directory name cache size Removed
381 CHANGES SINCE 4.19.0rc4
382 =======================
384 o MikeLiu <mikeliu@qnap.com>
385 * BUG 15453: File doesn't show when user doesn't have permission if
386 aio_pthread is loaded.
388 o Martin Schwenke <mschwenke@ddn.com>
389 * BUG 15451: ctdb_killtcp fails to work with --enable-pcap and libpcap ≥
393 CHANGES SINCE 4.19.0rc3
394 =======================
396 o Martin Schwenke <mschwenke@ddn.com>
397 * BUG 15460: Logging to stdout/stderr with DEBUG_SYSLOG_FORMAT_ALWAYS can log
400 o Joseph Sutton <josephsutton@catalyst.net.nz>
401 * BUG 15458: ‘samba-tool domain level raise’ fails unless given a URL.
404 CHANGES SINCE 4.19.0rc2
405 =======================
407 o Jeremy Allison <jra@samba.org>
408 * BUG 15420: reply_sesssetup_and_X() can dereference uninitialized tmp
410 * BUG 15430: missing return in reply_exit_done().
411 * BUG 15432: TREE_CONNECT without SETUP causes smbd to use uninitialized
414 o Andrew Bartlett <abartlet@samba.org>
415 * BUG 15401: Avoid infinite loop in initial user sync with Azure AD Connect
416 when synchronising a large Samba AD domain.
417 * BUG 15407: Samba replication logs show (null) DN.
419 o Stefan Metzmacher <metze@samba.org>
420 * BUG 15346: 2-3min delays at reconnect with smb2_validate_sequence_number:
422 * BUG 15446: DCERPC_PKT_CO_CANCEL and DCERPC_PKT_ORPHANED can't be parsed.
424 o Martin Schwenke <mschwenke@ddn.com>
425 * BUG 15438: CID 1539212 causes real issue when output contains only
428 o Joseph Sutton <josephsutton@catalyst.net.nz>
429 * BUG 15452: KDC encodes INT64 claims incorrectly.
431 o Jones Syue <jonessyue@qnap.com>
432 * BUG 15449: mdssvc: Do an early talloc_free() in _mdssvc_open().
435 CHANGES SINCE 4.19.0rc1
436 =======================
438 o Andrew Bartlett <abartlet@samba.org>
439 * BUG 9959: Windows client join fails if a second container CN=System exists
442 o Noel Power <noel.power@suse.com>
443 * BUG 15435: regression DFS not working with widelinks = true.
445 o Arvid Requate <requate@univention.de>
446 * BUG 9959: Windows client join fails if a second container CN=System exists
449 o Joseph Sutton <josephsutton@catalyst.net.nz>
450 * BUG 15443: Heimdal fails to build on 32-bit FreeBSD.
452 o Jones Syue <jonessyue@qnap.com>
453 * BUG 15441: samba-tool ntacl get segfault if aio_pthread appended.
459 https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.19#Release_blocking_bugs
462 #######################################
463 Reporting bugs & Development Discussion
464 #######################################
466 Please discuss this release on the samba-technical mailing list or by
467 joining the #samba-technical:matrix.org matrix room, or
468 #samba-technical IRC channel on irc.libera.chat
470 If you do report problems then please try to send high quality
471 feedback. If you don't provide vital information to help us track down
472 the problem then you will probably be ignored. All bug reports should
473 be filed under the Samba 4.1 and newer product in the project's Bugzilla
474 database (https://bugzilla.samba.org/).
477 ======================================================================
478 == Our Code, Our Bugs, Our Responsibility.
480 ======================================================================