== Subject:     User with "get changes" permission can
==              crash AD DC LDAP server via dirsync
== CVE ID#:     CVE-2019-14847
== Versions:    Samba 4.0.0 until Samba 4.10.9
== Summary:     Users with the "get changes" extended access
==              right can crash the AD DC LDAP server by
==              requesting an attribute using the range= syntax.


Since Samba 4.0.0 Samba has implemented, in the AD DC, the "dirsync"
LDAP control specified in MS-ADTS "

However, when combined with the ranged results feature specified in
MS-ADTS " Range Retrieval of Attribute Values" a NULL
pointer is can be de-referenced.

This is a Denial of Service only, no further escalation of privilege
is associated with this issue.

Samba 4.11 is not affected as the issue was fixed as a result of
Coverity static analysis, before the potential for denial of service
became apparent.

Patch Availability

Patches addressing both these issues have been posted to:

Additionally, Samba 4.9.15 and 4.10.10 have been issued
as security releases to correct the defect.  Samba administrators are
advised to upgrade to these releases or apply the patch as soon
as possible.

CVSSv3 calculation

CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H (4.9)

Workaround and mitigation. 

By default, the supported versions of Samba impacted by this issue run
using the "standard" process model, which is unaffected.

This is controlled by the -M or --model parameter to the samba binary.

Unsupported Samba versions before Samba 4.7 use a single process for
the LDAP server, and so are impacted.

Samba 4.8, 4.9 and 4.10 are impacted if -M prefork or -M single is
used. To mitigate this issue, select -M standard (the default).


Originally reported by Adam Xu

Patches provided and advisory written by Douglas Bagnall and Andrew
Bartlett of the Samba team and Catalyst.

== Our Code, Our Bugs, Our Responsibility.
== The Samba Team