CVE-2021-25216: A second vulnerability in BIND's GSSAPI security policy negotiation can be targeted by a buffer overflow attack

Michael McNally mcnally at isc.org
Wed Apr 28 20:20:10 UTC 2021


CVE:                 CVE-2021-25216
Document version:    2.0
Posting date:        28 April 2021
Program impacted:    BIND
Versions affected:   BIND 9.5.0 -> 9.11.29, 9.12.0 -> 9.16.13, and versions
                      BIND 9.11.3-S1 -> 9.11.29-S1 and 9.16.8-S1 -> 9.16.13-S1
                      of BIND Supported Preview Edition, as well as release
                      versions 9.17.0 -> 9.17.1 of the BIND 9.17 development
                      branch
Severity:            High
Exploitable:         Remotely

Description:

    GSS-TSIG is an extension to the TSIG protocol which is intended
    to support the secure exchange of keys for use in verifying the
    authenticity of communications between parties on a network.

    SPNEGO is a negotiation mechanism used by GSSAPI, the application
    protocol interface for GSS-TSIG.

    The SPNEGO implementation used by BIND has been found to be
    vulnerable to a buffer overflow attack.

Impact:

    BIND servers are vulnerable if they are running an affected
    version and are configured to use GSS-TSIG features.

    In a configuration which uses BIND's default settings the
    vulnerable code path is not exposed, but a server can be rendered
    vulnerable by explicitly setting values for the tkey-gssapi-keytab
    or tkey-gssapi-credential configuration options.

    Although the default configuration is not vulnerable, GSS-TSIG
    is frequently used in networks where BIND is integrated with
    Samba, as well as in mixed-server environments that combine BIND
    servers with Active Directory domain controllers. For servers
    that meet these conditions, the ISC SPNEGO implementation is
    vulnerable to various attacks, depending on the CPU architecture
    for which BIND was built:

    -  For named binaries compiled for 64-bit platforms, this flaw
       can be used to trigger a buffer over-read, leading to a server
       crash.

    -  For named binaries compiled for 32-bit platforms, this flaw
       can be used to trigger a server crash due to a buffer overflow
       and possibly also to achieve remote code execution.

    We have determined that standard SPNEGO implementations are
    available in the MIT and Heimdal Kerberos libraries, which support
    a broad range of operating systems, rendering the ISC implementation
    unnecessary and obsolete. Therefore, to reduce the attack surface
    for BIND users, we will be removing the ISC SPNEGO implementation
    in the April releases of BIND 9.11 and 9.16 (it had already been
    dropped from BIND 9.17).

    We would not normally remove something from a stable ESV (Extended
    Support Version) of BIND, but since system libraries can replace
    the ISC SPNEGO implementation, we have made an exception in this
    case for reasons of stability and security.

CVSS Score:          8.1 (on 32-bit platforms) or 7.4 (on 64-bit)
CVSS Vector:

    -  CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H (32-bit)
    -  CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H (64-bit)

For more information on the Common Vulnerability Scoring System and
to obtain your specific environmental score please visit:
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H&version=3.1.

Workarounds:

    This vulnerability only affects servers configured to use GSS-TSIG,
    most often to sign dynamic updates. If another mechanism can be
    used to authenticate updates, the vulnerability can be avoided
    by choosing not to enable the use of GSS-TSIG features.

    Prior to the April 2021 BIND releases, on some platforms it was
    possible to build a working BIND installation that was not
    vulnerable to CVE-2021-25216 by providing the --disable-isc-spnego
    command-line argument when running the ./configure script in the
    top level of the BIND source directory, before compiling and
    linking named.

    After the April 2021 BIND releases, all supported branches have
    removed isc-spnego support. This corrects CVE-2021-25216, but
    requires that the system have other libraries and header files
    to support GSS-TSIG functionality, unless such functionality is
    completely disabled at build time by providing the --without-gssapi
    argument to the ./configurescript when selecting build options.

Active exploits:

    We are not aware of any active exploits.

Solution:

    Upgrade to the patched release most closely related to your
    current version of BIND:

    -   BIND 9.11.31
    -   BIND 9.16.15

    BIND Supported Preview Edition is a special feature preview
    branch of BIND provided to eligible ISC support customers.

     -  BIND 9.11.31-S1
     -  BIND 9.16.15-S1

Acknowledgments:

    ISC would like to thank an anonymous party, working in conjunction
    with Trend Micro Zero Day Initiative, for reporting this issue to us.

Document revision history:

    1.0 Early Notification, 14 April 2021
    1.1 Disclosure schedule change, 15 April 2021
    2.0 Public disclosure, 28 April 2021

Related documents:

    See our BIND 9 Security Vulnerability Matrix for a complete
    listing of security vulnerabilities and versions affected.

Do you still have questions? Questions regarding this advisory
should go to security-officer at isc.org. To report a new issue, please
encrypt your message using security-officer at isc.org's PGP key which
can be found here: https://www.isc.org/pgpkey/. If you are unable
to use encrypted email, you may also report new issues at:
https://www.isc.org/reportbug/.

Note:

    ISC patches only currently supported versions. When possible we
    indicate EOL versions affected. (For current information on which
    versions are actively supported, please see
    https://www.isc.org/download/.)

ISC Security Vulnerability Disclosure Policy:

    Details of our current security advisory policy and practice can
    be found in the ISC Software Defect and Security Vulnerability
    Disclosure Policy at https://kb.isc.org/docs/aa-00861.

The Knowledgebase article https://kb.isc.org/docs/cve-2021-25216
is the complete and official security advisory document.

Legal Disclaimer:

    Internet Systems Consortium (ISC) is providing this notice on
    an "AS IS" basis. No warranty or guarantee of any kind is expressed
    in this notice and none should be implied. ISC expressly excludes
    and disclaims any warranties regarding this notice or materials
    referred to in this notice, including, without limitation, any
    implied warranty of merchantability, fitness for a particular
    purpose, absence of hidden defects, or of non-infringement. Your
    use or reliance on this notice or materials referred to in this
    notice is at your own risk. ISC may change this notice at any
    time. A stand-alone copy or paraphrase of the text of this
    document that omits the document URL is an uncontrolled copy.
    Uncontrolled copies may lack important information, be out of
    date, or contain factual errors.


More information about the bind-announce mailing list