NEWS[4.16.4]: Samba 4.16.4, 4.15.9 and 4.14.14 Security Releases Available for Download
[samba-web.git] / security / CVE-2016-2113.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4
5 <head>
6 <title>Samba - Security Announcement Archive</title>
7 </head>
8
9 <body>
10
11    <H2>CVE-2016-2113.html:</H2>
12
13 <p>
14 <pre>
15 ===================================================================================
16 == Subject:     Missing TLS certificate validation allows man in the middle attacks
17 ==
18 == CVE ID#:     CVE-2016-2113
19 ==
20 == Versions:    Samba 4.0.0 to 4.4.0
21 ==
22 == Summary:     Man in the middle attacks are possible for client triggered LDAP
23 ==              connections (with ldaps://) and ncacn_http connections
24 ==              (with https://).
25 ==
26 ===================================================================================
27
28 ===========
29 Description
30 ===========
31
32 Samba has support for TLS/SSL for some protocols:
33 ldap and http, but currently certificates are not
34 validated at all. While we have a "tls cafile" option,
35 the configured certificate is not used to validate
36 the server certificate.
37
38 This applies to ldaps:// connections triggered by tools like:
39 "ldbsearch", "ldbedit" and more. Note that it only applies
40 to the ldb tools when they are built as part of Samba or with Samba
41 extensions installed, which means the Samba builtin LDAP client library is
42 used.
43
44 It also applies to dcerpc client connections using ncacn_http (with https://),
45 which are only used by the openchange project. Support for ncacn_http
46 was introduced in version 4.2.0.
47
48 The security patches will introduce a new option called
49 "tls verify peer". Possible values are "no_check", "ca_only",
50 "ca_and_name_if_available", "ca_and_name" and "as_strict_as_possible".
51
52 If you use the self-signed certificates which are auto-generated
53 by Samba, you won't have a crl file and need to explicitly
54 set "tls verify peer = ca_and_name".
55
56 ===================
57 New smb.conf option
58 ===================
59
60   tls verify peer (G)
61
62     This controls if and how strict the client will verify the peer's
63     certificate and name. Possible values are (in increasing order): no_check,
64     ca_only, ca_and_name_if_available, ca_and_name and as_strict_as_possible.
65
66     When set to no_check the certificate is not verified at all,
67     which allows trivial man in the middle attacks.
68
69     When set to ca_only the certificate is verified to be signed from a ca
70     specified in the "tls ca file" option. Setting "tls ca file" to a valid file
71     is required. The certificate lifetime is also verified. If the "tls crl file"
72     option is configured, the certificate is also verified against
73     the ca crl.
74
75     When set to ca_and_name_if_available all checks from ca_only are performed.
76     In addition, the peer hostname is verified against the certificate's
77     name, if it is provided by the application layer and not given as
78     an ip address string.
79
80     When set to ca_and_name all checks from ca_and_name_if_available are performed.
81     In addition the peer hostname needs to be provided and even an ip
82     address is checked against the certificate's name.
83
84     When set to as_strict_as_possible all checks from ca_and_name are performed.
85     In addition the "tls crl file" needs to be configured. Future versions
86     of Samba may implement additional checks.
87
88     Default: tls verify peer = as_strict_as_possible
89
90 ==================
91 Patch Availability
92 ==================
93
94 A patch addressing this defect has been posted to
95
96   https://www.samba.org/samba/security/
97
98 Additionally, Samba 4.4.2, 4.3.8 and 4.2.11 have been issued as
99 security releases to correct the defect. Samba vendors and administrators
100 running affected versions are advised to upgrade or apply the patch as
101 soon as possible.
102
103 Note that Samba 4.4.1, 4.3.7 and 4.2.10 were privately released to vendors,
104 but had a regression, which is fixed in 4.4.2, 4.3.8 and 4.2.11.
105
106 ==========
107 Workaround
108 ==========
109
110 None.
111
112 =======
113 Credits
114 =======
115
116 This vulnerability was discovered and researched by Stefan Metzmacher of
117 SerNet (https://samba.plus) and the Samba Team (https://www.samba.org).
118 He provides the fixes in collaboration with the Samba Team.
119 </pre>
120 </body>
121 </html>