Merge tag 'samba-4.13.1' into v4-13-test
[samba.git] / WHATSNEW.txt
1                    ==============================
2                    Release Notes for Samba 4.13.1
3                           October 29, 2020
4                    ==============================
5
6
7 This is a security release in order to address the following defects:
8
9 o CVE-2020-14318: Missing handle permissions check in SMB1/2/3 ChangeNotify.
10 o CVE-2020-14323: Unprivileged user can crash winbind.
11 o CVE-2020-14383: An authenticated user can crash the DCE/RPC DNS with easily
12                   crafted records.
13
14
15 =======
16 Details
17 =======
18
19 o  CVE-2020-14318:
20    The SMB1/2/3 protocols have a concept of "ChangeNotify", where a client can
21    request file name notification on a directory handle when a condition such as
22    "new file creation" or "file size change" or "file timestamp update" occurs.
23
24    A missing permissions check on a directory handle requesting ChangeNotify
25    meant that a client with a directory handle open only for
26    FILE_READ_ATTRIBUTES (minimal access rights) could be used to obtain change
27    notify replies from the server. These replies contain information that should
28    not be available to directory handles open for FILE_READ_ATTRIBUTE only.
29
30 o  CVE-2020-14323:
31    winbind in version 3.6 and later implements a request to translate multiple
32    Windows SIDs into names in one request. This was done for performance
33    reasons: The Microsoft RPC call domain controllers offer to do this
34    translation, so it was an obvious extension to also offer this batch
35    operation on the winbind unix domain stream socket that is available to local
36    processes on the Samba server.
37
38    Due to improper input validation a hand-crafted packet can make winbind
39    perform a NULL pointer dereference and thus crash.
40
41 o  CVE-2020-14383:
42    Some DNS records (such as MX and NS records) usually contain data in the
43    additional section. Samba's dnsserver RPC pipe (which is an administrative
44    interface not used in the DNS server itself) made an error in handling the
45    case where there are no records present: instead of noticing the lack of
46    records, it dereferenced uninitialised memory, causing the RPC server to
47    crash. This RPC server, which also serves protocols other than dnsserver,
48    will be restarted after a short delay, but it is easy for an authenticated
49    non-admin attacker to crash it again as soon as it returns. The Samba DNS
50    server itself will continue to operate, but many RPC services will not.
51
52 For more details, please refer to the security advisories.
53
54
55 Changes since 4.13.0
56 --------------------
57
58 o  Jeremy Allison <jra@samba.org>
59    * BUG 14434: CVE-2020-14318: s3: smbd: Ensure change notifies can't get set
60      unless the directory handle is open for SEC_DIR_LIST.
61
62 o  Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
63    * BUG 12795: CVE-2020-14383: Remote crash after adding NS or MX records using
64      'samba-tool'.
65    * BUG 14472: CVE-2020-14383: Remote crash after adding MX records.
66
67 o  Volker Lendecke <vl@samba.org>
68    * BUG 14436: CVE-2020-14323: winbind: Fix invalid lookupsids DoS.
69
70
71 #######################################
72 Reporting bugs & Development Discussion
73 #######################################
74
75 Please discuss this release on the samba-technical mailing list or by
76 joining the #samba-technical IRC channel on irc.freenode.net.
77
78 If you do report problems then please try to send high quality
79 feedback. If you don't provide vital information to help us track down
80 the problem then you will probably be ignored.  All bug reports should
81 be filed under the Samba 4.1 and newer product in the project's Bugzilla
82 database (https://bugzilla.samba.org/).
83
84
85 ======================================================================
86 == Our Code, Our Bugs, Our Responsibility.
87 == The Samba Team
88 ======================================================================
89
90
91 Release notes for older releases follow:
92 ----------------------------------------
93
94                    ==============================
95                    Release Notes for Samba 4.13.0
96                           September 22, 2020
97                    ==============================
98
99
100 This is the first stable release of the Samba 4.13 release series.
101 Please read the release notes carefully before upgrading.
102
103
104 ZeroLogon
105 =========
106
107 Please avoid to set "server schannel = no" and "server schannel= auto" on all
108 Samba domain controllers due to the wellknown ZeroLogon issue.
109
110 For details please see
111 https://www.samba.org/samba/security/CVE-2020-1472.html.
112
113
114 NEW FEATURES/CHANGES
115 ====================
116
117 Python 3.6 or later required
118 ----------------------------
119
120 Samba's minimum runtime requirement for python was raised to Python
121 3.5 with samba 4.12.  Samba 4.13 raises this minimum version to Python
122 3.6 both to access new features and because this is the oldest version
123 we test with in our CI infrastructure.
124
125 This is also the last release where it will be possible to build Samba
126 (just the file server) with Python versions 2.6 and 2.7.
127
128 As Python 2.7 has been End Of Life upstream since April 2020, Samba
129 is dropping ALL Python 2.x support in the NEXT release.
130
131 Samba 4.14 to be released in March 2021 will require Python 3.6 or
132 later to build.
133
134 wide links functionality
135 ------------------------
136
137 For this release, the code implementing the insecure "wide links = yes"
138 functionality has been moved out of the core smbd code and into a separate
139 VFS module, vfs_widelinks. Currently this vfs module is implicitly loaded
140 by smbd as the last but one module before vfs_default if "wide links = yes"
141 is enabled on the share (note, the existing restrictions on enabling wide
142 links around the SMB1 "unix extensions" and the "allow insecure wide links"
143 parameters are still in force). The implicit loading was done to allow
144 existing users of "wide links = yes" to keep this functionality without
145 having to make a change to existing working smb.conf files.
146
147 Please note that the Samba developers recommend changing any Samba
148 installations that currently use "wide links = yes" to use bind mounts
149 as soon as possible, as "wide links = yes" is an inherently insecure
150 configuration which we would like to remove from Samba. Moving the
151 feature into a VFS module allows this to be done in a cleaner way
152 in future.
153
154 A future release to be determined will remove this implicit linkage,
155 causing administrators who need this functionality to have to explicitly
156 add the vfs_widelinks module into the "vfs objects =" parameter lists.
157 The release notes will be updated to note this change when it occurs.
158
159 NT4-like 'classic' Samba domain controllers
160 -------------------------------------------
161
162 Samba 4.13 deprecates Samba's original domain controller mode.
163
164 Sites using Samba as a Domain Controller should upgrade from the
165 NT4-like 'classic' Domain Controller to a Samba Active Directory DC
166 to ensure full operation with modern windows clients.
167
168 SMBv1 only protocol options deprecated
169 --------------------------------------
170
171 A number of smb.conf parameters for less-secure authentication methods
172 which are only possible over SMBv1 are deprecated in this release.
173
174
175 REMOVED FEATURES
176 ================
177
178 The deprecated "ldap ssl ads" smb.conf option has been removed.
179
180
181 smb.conf changes
182 ================
183
184   Parameter Name                      Description                Default
185   --------------                      -----------                -------
186   ldap ssl ads                        Removed
187   smb2 disable lock sequence checking Added                      No
188   smb2 disable oplock break retry     Added                      No
189   domain logons                       Deprecated                 no
190   raw NTLMv2 auth                     Deprecated                 no
191   client plaintext auth               Deprecated                 no
192   client NTLMv2 auth                  Deprecated                 yes
193   client lanman auth                  Deprecated                 no
194   client use spnego                   Deprecated                 yes
195   server require schannel:COMPUTER    Added
196
197
198 CHANGES SINCE 4.13.0rc5
199 =======================
200
201 o  Jeremy Allison <jra@samba.org>
202    * BUG 14497: CVE-2020-1472(ZeroLogon): s3:rpc_server/netlogon: Protect
203      netr_ServerPasswordSet2 against unencrypted passwords.
204
205 o  Günther Deschner <gd@samba.org>
206    * BUG 14497: CVE-2020-1472(ZeroLogon): s3:rpc_server/netlogon: Support
207      "server require schannel:WORKSTATION$ = no" about unsecure configurations.
208
209 o  Gary Lockyer <gary@catalyst.net.nz>
210    * BUG 14497: CVE-2020-1472(ZeroLogon): s4 torture rpc: repeated bytes in
211      client challenge.
212
213 o  Stefan Metzmacher <metze@samba.org>
214    * BUG 14497: CVE-2020-1472(ZeroLogon): libcli/auth: Reject weak client
215      challenges in netlogon_creds_server_init()
216      "server require schannel:WORKSTATION$ = no".
217
218
219 CHANGES SINCE 4.13.0rc4
220 =======================
221
222 o  Andreas Schneider <asn@samba.org>
223    * BUG 14399: waf: Only use gnutls_aead_cipher_encryptv2() for GnuTLS >
224      3.6.14.
225    * BUG 14467: s3:smbd: Fix %U substitutions if it contains a domain name.
226    * BUG 14479: The created krb5.conf for 'net ads join' doesn't have a domain
227      entry.
228
229 o  Stefan Metzmacher <metze@samba.org>
230    * BUG 14482: Fix build problem if libbsd-dev is not installed.
231
232
233 CHANGES SINCE 4.13.0rc3
234 =======================
235
236 o  David Disseldorp <ddiss@samba.org>
237    * BUG 14437: build: Toggle vfs_snapper using "--with-shared-modules".
238
239 o  Volker Lendecke <vl@samba.org>
240    * BUG 14465: idmap_ad does not deal properly with a RFC4511 section 4.4.1
241      response.
242
243 o  Stefan Metzmacher <metze@samba.org>
244    * BUG 14428: PANIC: Assert failed in get_lease_type().
245    * BUG 14465: idmap_ad does not deal properly with a RFC4511 section 4.4.1
246      response.
247
248
249 CHANGES SINCE 4.13.0rc2
250 =======================
251
252 o  Andrew Bartlett <abartlet@samba.org>
253    * BUG 14460: Deprecate domain logons, SMBv1 things.
254
255 o  Günther Deschner <gd@samba.org>
256    * BUG 14318: docs: Add missing winexe manpage.
257
258 o  Christof Schmitt <cs@samba.org>
259    * BUG 14166: util: Allow symlinks in directory_create_or_exist.
260
261 o  Martin Schwenke <martin@meltin.net>
262    * BUG 14466: ctdb disable/enable can fail due to race condition.
263
264
265 CHANGES SINCE 4.13.0rc1
266 =======================
267
268 o  Andrew Bartlett <abartlet@samba.org>
269    * BUG 14450: dbcheck: Allow a dangling forward link outside our known NCs.
270
271 o  Isaac Boukris <iboukris@gmail.com>
272    * BUG 14462: Remove deprecated "ldap ssl ads" smb.conf option.
273
274 o  Volker Lendecke <vl@samba.org>
275    * BUG 14435: winbind: Fix lookuprids cache problem.
276
277 o  Stefan Metzmacher <metze@samba.org>
278    * BUG 14354: kdc:db-glue: Ignore KRB5_PROG_ETYPE_NOSUPP also for
279      Primary:Kerberos.
280
281 o  Andreas Schneider <asn@samba.org>
282    * BUG 14358: docs: Fix documentation for require_membership_of of
283      pam_winbind.conf.
284
285 o  Martin Schwenke <martin@meltin.net>
286    * BUG 14444: ctdb-scripts: Use nfsconf as a last resort get nfsd thread
287      count.
288
289
290 KNOWN ISSUES
291 ============
292
293 https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.13#Release_blocking_bugs
294
295
296 #######################################
297 Reporting bugs & Development Discussion
298 #######################################
299
300 Please discuss this release on the samba-technical mailing list or by
301 joining the #samba-technical IRC channel on irc.freenode.net.
302
303 If you do report problems then please try to send high quality
304 feedback. If you don't provide vital information to help us track down
305 the problem then you will probably be ignored.  All bug reports should
306 be filed under the Samba 4.1 and newer product in the project's Bugzilla
307 database (https://bugzilla.samba.org/).
308
309
310 ======================================================================
311 == Our Code, Our Bugs, Our Responsibility.
312 == The Samba Team
313 ======================================================================
314