1 =============================
2 Release Notes for Samba 4.3.3
4 =============================
7 This is a security release in order to address the following CVEs:
9 o CVE-2015-3223 (Denial of service in Samba Active Directory
11 o CVE-2015-5252 (Insufficient symlink verification in smbd)
12 o CVE-2015-5299 (Missing access control check in shadow copy
14 o CVE-2015-5296 (Samba client requesting encryption vulnerable
16 o CVE-2015-8467 (Denial of service attack against Windows
17 Active Directory server)
18 o CVE-2015-5330 (Remote memory read in Samba LDAP server)
20 Please note that if building against a system libldb, the required
21 version has been bumped to ldb-1.1.24. This is needed to ensure
22 we build against a system ldb library that contains the fixes
23 for CVE-2015-5330 and CVE-2015-3223.
30 All versions of Samba from 4.0.0 to 4.3.2 inclusive (resp. all
31 ldb versions up to 1.1.23 inclusive) are vulnerable to
32 a denial of service attack in the samba daemon LDAP server.
34 A malicious client can send packets that cause the LDAP server in the
35 samba daemon process to become unresponsive, preventing the server
36 from servicing any other requests.
38 This flaw is not exploitable beyond causing the code to loop expending
42 All versions of Samba from 3.0.0 to 4.3.2 inclusive are vulnerable to
43 a bug in symlink verification, which under certain circumstances could
44 allow client access to files outside the exported share path.
46 If a Samba share is configured with a path that shares a common path
47 prefix with another directory on the file system, the smbd daemon may
48 allow the client to follow a symlink pointing to a file or directory
49 in that other directory, even if the share parameter "wide links" is
50 set to "no" (the default).
53 All versions of Samba from 3.2.0 to 4.3.2 inclusive are vulnerable to
54 a missing access control check in the vfs_shadow_copy2 module. When
55 looking for the shadow copy directory under the share path the current
56 accessing user should have DIRECTORY_LIST access rights in order to
57 view the current snapshots.
59 This was not being checked in the affected versions of Samba.
62 Versions of Samba from 3.2.0 to 4.3.2 inclusive do not ensure that
63 signing is negotiated when creating an encrypted client connection to
66 Without this a man-in-the-middle attack could downgrade the connection
67 and connect using the supplied credentials as an unsigned, unencrypted
71 Samba, operating as an AD DC, is sometimes operated in a domain with a
72 mix of Samba and Windows Active Directory Domain Controllers.
74 All versions of Samba from 4.0.0 to 4.3.2 inclusive, when deployed as
75 an AD DC in the same domain with Windows DCs, could be used to
76 override the protection against the MS15-096 / CVE-2015-2535 security
79 Prior to MS16-096 it was possible to bypass the quota of machine
80 accounts a non-administrative user could create. Pure Samba domains
81 are not impacted, as Samba does not implement the
82 SeMachineAccountPrivilege functionality to allow non-administrator
83 users to create new computer objects.
86 All versions of Samba from 4.0.0 to 4.3.2 inclusive (resp. all
87 ldb versions up to 1.1.23 inclusive) are vulnerable to
88 a remote memory read attack in the samba daemon LDAP server.
90 A malicious client can send packets that cause the LDAP server in the
91 samba daemon process to return heap memory beyond the length of the
94 This memory may contain data that the client should not be allowed to
95 see, allowing compromise of the server.
97 The memory may either be returned to the client in an error string, or
98 stored in the database by a suitabily privileged user. If untrusted
99 users can create objects in your database, please confirm that all DN
100 and name attributes are reasonable.
106 o Andrew Bartlett <abartlet@samba.org>
107 * BUG 11552: CVE-2015-8467: samdb: Match MS15-096 behaviour for
110 o Jeremy Allison <jra@samba.org>
111 * BUG 11325: CVE-2015-3223: Fix LDAP \00 search expression attack DoS.
112 * BUG 11395: CVE-2015-5252: Fix insufficient symlink verification (file
113 access outside the share).
114 * BUG 11529: CVE-2015-5299: s3-shadow-copy2: Fix missing access check on
117 o Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
118 * BUG 11599: CVE-2015-5330: Fix remote read memory exploit in LDB.
120 o Stefan Metzmacher <metze@samba.org>
121 * BUG 11536: CVE-2015-5296: Add man in the middle protection when forcing
122 smb encryption on the client side.
125 #######################################
126 Reporting bugs & Development Discussion
127 #######################################
129 Please discuss this release on the samba-technical mailing list or by
130 joining the #samba-technical IRC channel on irc.freenode.net.
132 If you do report problems then please try to send high quality
133 feedback. If you don't provide vital information to help us track down
134 the problem then you will probably be ignored. All bug reports should
135 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
136 database (https://bugzilla.samba.org/).
139 ======================================================================
140 == Our Code, Our Bugs, Our Responsibility.
142 ======================================================================
145 Older release notes to follow:
146 ------------------------------
148 =============================
149 Release Notes for Samba 4.3.2
151 =============================
154 This is the latest stable release of Samba 4.3.
160 o Michael Adam <obnox@samba.org>
161 * BUG 11577: ctdb: Open the RO tracking db with perms 0600 instead of 0000.
163 o Jeremy Allison <jra@samba.org>
164 * BUG 11452: s3-smbd: Fix old DOS client doing wildcard delete - gives an
165 attribute type of zero.
166 * BUG 11565: auth: gensec: Fix a memory leak.
167 * BUG 11566: lib: util: Make non-critical message a warning.
168 * BUG 11589: s3: smbd: If EAs are turned off on a share don't allow an SMB2
169 create containing them.
170 * BUG 11615: s3: smbd: have_file_open_below() fails to enumerate open files
171 below an open directory handle.
173 o Ralph Boehme <slow@samba.org>
174 * BUG 11562: s4:lib/messaging: Use correct path for names.tdb.
175 * BUG 11564: async_req: Fix non-blocking connect().
177 o Volker Lendecke <vl@samba.org>
178 * BUG 11243: vfs_gpfs: Re-enable share modes.
179 * BUG 11570: smbd: Send SMB2 oplock breaks unencrypted.
180 * BUG 11612: winbind: Fix crash on invalid idmap configs.
182 o YvanM <yvan.masson@openmailbox.org>
183 * BUG 11584: manpage: Correct small typo error.
185 o Stefan Metzmacher <metze@samba.org>
186 * BUG 11327: dcerpc.idl: Accept invalid dcerpc_bind_nak pdus.
187 * BUG 11581: s3:smb2_server: Make the logic of SMB2_CANCEL DLIST_REMOVE()
190 o Marc Muehlfeld <mmuehlfeld@samba.org>
191 * BUG 9912: Changing log level of two entries to DBG_NOTICE.
192 * BUG 11581: s3-smbd: Fix use after issue in smbd_smb2_request_dispatch().
194 o Noel Power <noel.power@suse.com>
195 * BUG 11569: Fix winbindd crashes with samlogon for trusted domain user.
196 * BUG 11597: Backport some valgrind fixes from upstream master.
198 o Andreas Schneider <asn@samba.org
199 * BUG 11563: Fix segfault of 'net ads (join|leave) -S INVALID' with
202 o Tom Schulz <schulz@adi.com>
203 * BUG 11511: Add libreplace dependency to texpect, fixes a linking error on
205 * BUG 11512: s4: Fix linking of 'smbtorture' on Solaris.
207 o Uri Simchoni <uri@samba.org>
208 * BUG 11608: auth: Consistent handling of well-known alias as primary gid.
210 #######################################
211 Reporting bugs & Development Discussion
212 #######################################
214 Please discuss this release on the samba-technical mailing list or by
215 joining the #samba-technical IRC channel on irc.freenode.net.
217 If you do report problems then please try to send high quality
218 feedback. If you don't provide vital information to help us track down
219 the problem then you will probably be ignored. All bug reports should
220 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
221 database (https://bugzilla.samba.org/).
224 ======================================================================
225 == Our Code, Our Bugs, Our Responsibility.
227 ======================================================================
230 ----------------------------------------------------------------------
233 =============================
234 Release Notes for Samba 4.3.1
236 =============================
239 This is the latest stable release of Samba 4.3.
245 o Jeremy Allison <jra@samba.org>
246 * BUG 10252: s3: smbd: Fix our access-based enumeration on "hide unreadable"
248 * BUG 10634: smbd: Fix file name buflen and padding in notify repsonse.
249 * BUG 11486: s3: smbd: Fix mkdir race condition.
250 * BUG 11522: s3: smbd: Fix opening/creating :stream files on the root share
252 * BUG 11535: s3: smbd: Fix NULL pointer bug introduced by previous 'raw'
253 * stream fix (bug #11522).
254 * BUG 11555: s3: lsa: lookup_name() logic for unqualified (no DOMAIN\
255 component) names is incorrect.
257 o Ralph Boehme <slow@samba.org>
258 * BUG 11535: s3: smbd: Fix a crash in unix_convert().
259 * BUG 11543: vfs_fruit: Return value of ad_pack in vfs_fruit.c.
260 * BUG 11549: s3:locking: Initialize lease pointer in
261 share_mode_traverse_fn().
262 * BUG 11550: s3:smbstatus: Add stream name to share_entry_forall().
263 * BUG 11555: s3:lib: Validate domain name in lookup_wellknown_name().
265 o Günther Deschner <gd@samba.org>
266 * BUG 11038: kerberos: Make sure we only use prompter type when available.
268 o Volker Lendecke <vl@samba.org>
269 * BUG 11038: winbind: Fix 100% loop.
270 * BUG 11053: source3/lib/msghdr.c: Fix compiling error on Solaris.
272 o Stefan Metzmacher <metze@samba.org>
273 * BUG 11316: s3:ctdbd_conn: make sure we destroy tevent_fd before closing
275 * BUG 11515: s4:lib/messaging: Use 'msg.lock' and 'msg.sock' for messaging
277 * BUG 11526: lib/param: Fix hiding of FLAG_SYNONYM values.
279 o Björn Jacke <bj@sernet.de>
280 * BUG 10365: nss_winbind: Fix hang on Solaris on big groups.
281 * BUG 11355: build: Use as-needed linker flag also on OpenBSD.
283 o Har Gagan Sahai <SHarGagan@novell.com>
284 * BUG 11509: s3: dfs: Fix a crash when the dfs targets are disabled.
286 o Andreas Schneider <asn@samba.org>
287 * BUG 11502: pam_winbind: Fix a segfault if initialization fails.
289 o Uri Simchoni <uri@samba.org>
290 * BUG 11528: net: Fix a crash with 'net ads keytab create'.
291 * BUG 11547: vfs_commit: set the fd on open before calling SMB_VFS_FSTAT.
293 #######################################
294 Reporting bugs & Development Discussion
295 #######################################
297 Please discuss this release on the samba-technical mailing list or by
298 joining the #samba-technical IRC channel on irc.freenode.net.
300 If you do report problems then please try to send high quality
301 feedback. If you don't provide vital information to help us track down
302 the problem then you will probably be ignored. All bug reports should
303 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
304 database (https://bugzilla.samba.org/).
307 ======================================================================
308 == Our Code, Our Bugs, Our Responsibility.
310 ======================================================================
313 ----------------------------------------------------------------------
316 =============================
317 Release Notes for Samba 4.3.0
319 =============================
322 This is the first stable release of Samba 4.3.
328 Read the "New FileChangeNotify subsystem" and "smb.conf changes" sections
338 The logging code now supports logging to multiple backends. In
339 addition to the previously available syslog and file backends, the
340 backends for logging to the systemd-journal, lttng and gpfs have been
341 added. Please consult the section for the 'logging' parameter in the
342 smb.conf manpage for details.
347 Support for Apple's Spotlight has been added by integrating with Gnome
350 For detailed instructions how to build and setup Samba for Spotlight,
351 please see the Samba wiki: <https://wiki.samba.org/index.php/Spotlight>
353 New FileChangeNotify subsystem
354 ------------------------------
356 Samba now contains a new subsystem to do FileChangeNotify. The
357 previous system used a central database, notify_index.tdb, to store
358 all notification requests. In particular in a cluster this turned out
359 to be a major bottleneck, because some hot records need to be bounced
360 back and forth between nodes on every change event like a new created
363 The new FileChangeNotify subsystem works with a central daemon per
364 node. Every FileChangeNotify request and every event are handled by an
365 asynchronous message from smbd to the notify daemon. The notify daemon
366 maintains a database of all FileChangeNotify requests in memory and
367 will distribute the notify events accordingly. This database is
368 asynchronously distributed in the cluster by the notify daemons.
370 The notify daemon is supposed to scale a lot better than the previous
371 implementation. The functional advantage is cross-node kernel change
372 notify: Files created via NFS will be seen by SMB clients on other
373 nodes per FileChangeNotify, despite the fact that popular cluster file
374 systems do not offer cross-node inotify.
376 Two changes to the configuration were required for this new subsystem:
377 The parameters "change notify" and "kernel change notify" are not
378 per-share anymore but must be set globally. So it is no longer
379 possible to enable or disable notify per share, the notify daemon has
380 no notion of a share, it only works on absolute paths.
382 New SMB profiling code
383 ----------------------
385 The code for SMB (SMB1, SMB2 and SMB3) profiling uses a tdb instead
386 of sysv IPC shared memory. This avoids performance problems and NUMA
387 effects. The profile stats are a bit more detailed than before.
389 Improved DCERPC man in the middle detection for kerberos
390 --------------------------------------------------------
392 The gssapi based kerberos backends for gensec have support for
393 DCERPC header signing when using DCERPC_AUTH_LEVEL_PRIVACY.
395 SMB signing required in winbindd by default
396 -------------------------------------------
398 The effective value for "client signing" is required
399 by default for winbindd, if the primary domain uses active directory.
401 Experimental NTDB was removed
402 -----------------------------
404 The experimental NTDB library introduced in Samba 4.0 has been
407 Improved support for trusted domains (as AD DC)
408 -----------------------------------------------
410 The support for trusted domains/forests has improved a lot.
412 samba-tool got "domain trust" subcommands to manage trusts:
414 create - Create a domain or forest trust.
415 delete - Delete a domain trust.
416 list - List domain trusts.
417 namespaces - Manage forest trust namespaces.
418 show - Show trusted domain details.
419 validate - Validate a domain trust.
421 External trusts between individual domains work in both ways
422 (inbound and outbound). The same applies to root domains of
423 a forest trust. The transitive routing into the other forest
424 is fully functional for kerberos, but not yet supported for NTLMSSP.
426 While a lot of things are working fine, there are currently a few limitations:
428 - Both sides of the trust need to fully trust each other!
429 - No SID filtering rules are applied at all!
430 - This means DCs of domain A can grant domain admin rights
432 - It's not possible to add users/groups of a trusted domain
438 Both client and server have support for SMB 3.1.1 now.
440 This is the dialect introduced with Windows 10, it improves the secure
441 negotiation of SMB dialects and features.
443 There's also a new optinal encryption algorithm aes-gcm-128,
444 but for now this is only selected as fallback and aes-ccm-128
445 is preferred because of the better performance. This might change
446 in future versions when hardware encryption will be supported.
447 See https://bugzilla.samba.org/show_bug.cgi?id=11451.
449 New smbclient subcommands
450 -------------------------
452 - Query a directory for change notifications: notify <dir name>
453 - Server side copy: scopy <source filename> <destination filename>
455 New rpcclient subcommands
456 -------------------------
458 netshareenumall - Enumerate all shares
459 netsharegetinfo - Get Share Info
460 netsharesetinfo - Set Share Info
461 netsharesetdfsflags - Set DFS flags
462 netfileenum - Enumerate open files
463 netnamevalidate - Validate sharename
464 netfilegetsec - Get File security
465 netsessdel - Delete Session
466 netsessenum - Enumerate Sessions
467 netdiskenum - Enumerate Disks
468 netconnenum - Enumerate Connections
469 netshareadd - Add share
470 netsharedel - Delete share
475 idmap_script - see 'man 8 idmap_script'
476 vfs_unityed_media - see 'man 8 vfs_unityed_media'
477 vfs_shell_snap - see 'man 8 vfs_shell_snap'
479 New sparsely connected replia graph (Improved KCC)
480 --------------------------------------------------
482 The Knowledge Consistency Checker (KCC) maintains a replication graph
483 for DCs across an AD network. The existing Samba KCC uses a fully
484 connected graph, so that each DC replicates from all the others, which
485 does not scale well with large networks. In 4.3 there is an
486 experimental new KCC that creates a sparsely connected replication
487 graph and closely follows Microsoft's specification. It is turned off
488 by default. To use the new KCC, set "kccsrv:samba_kcc=true" in
489 smb.conf and let us know how it goes. You should consider doing this
490 if you are making a large new network. For small networks there is
491 little benefit and you can always switch over at a later date.
493 Configurable TLS protocol support, with better defaults
494 -------------------------------------------------------
496 The "tls priority" option can be used to change the supported TLS
497 protocols. The default is to disable SSLv3, which is no longer
500 Samba-tool now supports all 7 FSMO roles
501 -------------------------------------------------------
503 Previously "samba-tool fsmo" could only show, transfer or seize the
504 five well-known FSMO roles:
510 Infrastructure Master
512 It can now also show, transfer or seize the DNS infrastructure roles:
514 DomainDnsZones Infrastructure Master
515 ForestDnsZones Infrastructure Master
520 The destination for CTDB logging is now set via a single new
521 configuration variable CTDB_LOGGING. This replaces CTDB_LOGFILE and
522 CTDB_SYSLOG, which have both been removed. See ctdbd.conf(5) for
523 details of CTDB_LOGGING.
525 CTDB no longer runs a separate logging daemon.
527 CTDB NFS support changes
528 ------------------------
530 CTDB's NFS service management has been combined into a single 60.nfs
531 event script. This updated 60.nfs script now uses a call-out to
532 interact with different NFS implementations. See the CTDB_NFS_CALLOUT
533 option in the ctdbd.conf(5) manual page for details. A default
534 call-out is provided to interact with the Linux kernel NFS
535 implementation. The 60.ganesha event script has been removed - a
536 sample call-out is provided for NFS Ganesha, based on this script.
538 The method of configuring NFS RPC checks has been improved. See
539 ctdb/config/nfs-checks.d/README for details.
541 Improved Cross-Compiling Support
542 --------------------------------
544 A new "hybrid" build configuration mode is added to improve
545 cross-compilation support.
547 A common challenge in cross-compilation is that of obtaining the results
548 of tests that have to run on the target, during the configuration
549 phase of the build. The Samba build system already supports the following
552 - Executing configure tests using the --cross-execute parameter
553 - Obtaining the results from an answers file using the --cross-answers
556 The first method has the drawback of inaccurate results if the tests are
557 run using an emulator, or a need to be connected to a running target
558 while building, if the tests are to be run on an actual target. The
559 second method presents a challenge of figuring out the test results.
561 The new hybrid mode runs the tests and records the result in an answer file.
562 To activate this mode, use both --cross-execute and --cross-answers in the
563 same configure invocation. This mode can be activated once against a
564 running target, and then the generated answers file can be used in
567 Also supplied is an example script that can be used as the
568 cross-execute program. This script copies the test to a running target
569 and runs the test on the target, obtaining the result. The obtained
570 results are more accurate than running the test with an emulator, because
571 they reflect the exact kernel and system libraries that exist on the
574 Improved Sparse File Support
575 ----------------------------
576 Support for the FSCTL_SET_ZERO_DATA and FSCTL_QUERY_ALLOCATED_RANGES
577 SMB2 requests has been added to the smbd file server.
578 This allows for clients to deallocate (hole punch) regions within a
579 sparse file, and check which portions of a file are allocated.
582 ######################################################################
589 Parameter Name Description Default
590 -------------- ----------- -------
592 msdfs shuffle referrals New no
593 smbd profiling level New off
595 tls priority New NORMAL:-VERS-SSL3.0
597 change notify Changed to [global]
598 kernel change notify Changed to [global]
599 client max protocol Changed default SMB3_11
600 server max protocol Changed default SMB3_11
605 vfs_notify_fam - see section 'New FileChangeNotify subsystem'.
614 CHANGES SINCE 4.2.0rc4
615 ======================
617 o Andrew Bartlett <abartlet@samba.org>
618 * Bug 10973: No objectClass found in replPropertyMetaData on ordinary
619 objects (non-deleted)
620 * Bug 11429: Python bindings don't check integer types
621 * Bug 11430: Python bindings don't check array sizes
623 o Ralph Boehme <slow@samba.org>
624 * Bug 11467: Handling of 0 byte resource fork stream
626 o Volker Lendecke <vl@samba.org>
627 * Bug 11488: AD samr GetGroupsForUser fails for users with "()" in
630 o Stefan Metzmacher <metze@samba.org>
631 * Bug 11429: Python bindings don't check integer types
633 o Matthieu Patou <mat@matws.net>
634 * Bug 10973: No objectClass found in replPropertyMetaData on ordinary
635 objects (non-deleted)
638 CHANGES SINCE 4.2.0rc3
639 ======================
641 o Ralph Boehme <slow@samba.org>
642 * Bug 11444: Crash in notify_remove caused by change notify = no
644 o Günther Deschner <gd@samba.org>
645 * Bug 11411: smbtorture does not build when configured --with-system-mitkrb5
647 o Volker Lendecke <vl@samba.org>
648 * Bug 11455: fix recursion problem in rep_strtoll in lib/replace/replace.c
649 * Bug 11464: xid2sid gives inconsistent results
650 * Bug 11465: ctdb: Fix the build on FreeBSD 10.1
652 o Roel van Meer <roel@1afa.com>
653 * Bug 11427: nmbd incorrectly matches netbios names as own name
655 o Stefan Metzmacher <metze@samba.org>
656 * Bug 11451: Poor SMB3 encryption performance with AES-GCM
657 * Bug 11458: --bundled-libraries=!ldb,!pyldb,!pyldb-util doesn't
658 disable ldb build and install
660 o Andreas Schneider <asn@samba.org>
661 * Bug 9862: Samba "map to guest = Bad uid" doesn't work
664 CHANGES SINCE 4.3.0rc2
665 ======================
667 o Andrew Bartlett <abartlet@samba.org>
668 * Bug 11436: samba-tool uncaught exception error
669 * Bug 10493: revert LDAP extended rule 1.2.840.113556.1.4.1941
670 LDAP_MATCHING_RULE_IN_CHAIN changes
672 o Ralph Boehme <slow@samba.org>
673 * Bug 11278: Stream names with colon don't work with
674 fruit:encoding = native
675 * Bug 11426: net share allowedusers crashes
677 o Amitay Isaacs <amitay@gmail.com>
678 * Bug 11432: Fix crash in nested ctdb banning
679 * Bug 11434: Cannot build ctdbpmda
680 * Bug 11431: CTDB's eventscript error handling is broken
682 o Stefan Metzmacher <metze@samba.org>
683 * Bug 11451: Poor SMB3 encryption performance with AES-GCM (part1)
684 * Bug 11316: tevent_fd needs to be destroyed before closing the fd
686 o Arvid Requate <requate@univention.de>
687 * Bug 11291: NetApp joined to a Samba/ADDC cannot resolve SIDs
689 o Martin Schwenke <martin@meltin.net>
690 * Bug 11432: Fix crash in nested ctdb banning
693 CHANGES SINCE 4.3.0rc1
694 ======================
696 o Jeremy Allison <jra@samba.org>
697 * BUG 11359: strsep is not available on Solaris
699 o Björn Baumbach <bb@sernet.de>
700 * BUG 11421: Build with GPFS support is broken
702 o Justin Maggard <jmaggard@netgear.com>
703 * BUG 11320: "force group" with local group not working
705 o Martin Schwenke <martin@meltin.net>
706 * BUG 11424: Build broken with --disable-python
709 #######################################
710 Reporting bugs & Development Discussion
711 #######################################
713 Please discuss this release on the samba-technical mailing list or by
714 joining the #samba-technical IRC channel on irc.freenode.net.
716 If you do report problems then please try to send high quality
717 feedback. If you don't provide vital information to help us track down
718 the problem then you will probably be ignored. All bug reports should
719 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
720 database (https://bugzilla.samba.org/).
723 ======================================================================
724 == Our Code, Our Bugs, Our Responsibility.
726 ======================================================================