BIND缓冲区溢出漏洞(CVE-2021-25216)

发布时间 2021-04-30

0x00 漏洞概述

CVE  ID

CVE-2021-25216

时   间

2021-04-30

类   型

缓冲区溢出

等    级

高危

远程利用

影响范围


PoC/EXP

未公开

在野利用

 

0x01 漏洞详情

image.png

BIND(Berkeley Internet Name Domain,伯克利因特网名称域)服务是全球范围内使用最广泛、 最安全可靠且高效的域名解析服务程序。

2021年04月28日,ISC发布安全公告,公开了BIND中的一个缓冲区溢出漏洞(CVE-2021-25216),该漏洞的CVSS评分为8.1。攻击者可以利用此漏洞触发缓冲区溢出,最终导致服务器崩溃或远程代码执行。

 

漏洞细节

该漏洞存在于BIND使用的SPNEGO中,如果BIND服务器配置为使用GSS-TSIG功能,则存在此漏洞。GSS-TSIG是对TSIG协议的扩展,旨在支持安全交换密钥,用于验证网络上各方之间通信的真实性,SPNEGO是GSSAPI使用的一种协商机制,是GSS-TSIG的应用协议接口。

BIND默认配置不会暴露易受攻击的代码路径,但通过设置tkey-gssapi-keytab或tkey-gssapi-credential配置选项的值,可以使服务器受到攻击。此外,GSS-TSIG经常被用于BIND与Samba集成的网络中,以及BIND服务器与Active Directory域控制器结合的混合服务器环境中,这种环境下的ISC SPNEGO容易受到针对此漏洞的攻击,具体影响取决于BIND所使用的CPU架构:

Named(64位):CVSS评分7.4,此漏洞可触发缓冲区溢出,从而导致服务器崩溃。

Named(32位):CVSS评分8.1,此漏洞可触发缓冲区溢出导致服务器崩溃,并远程执行代码。

 

影响范围

BIND 9.5.0 - 9.11.29

BIND 9.12.0- 9.16.13

BIND支持的预览版9.11.3-S1 - 9.11.29-S1和 9.16.8-S1 - 9.16.13-S1

以及BIND 9.17分支发行版BIND 9.17.0 - 9.17.1。

 

0x02 处置建议

目前此漏洞已经修复,建议升级到以下版本:

BIND 9.11.31

BIND 9.16.15

BIND支持的预览版(适用于符合条件的ISC支持客户):

BIND 9.11.31-S1

BIND 9.16.15-S1

 

解决方法:

此漏洞仅影响配置为使用GSS-TSIG的服务器,可以通过选择不启用GSS-TSIG功能来避免该漏洞。

在2021年4月的BIND发布之后,所有支持的分支都删除了isc-spnego,以避免此漏洞,但需要系统使用其它库和头文件来支持GSS-TSIG功能,除非在选择构建选项时向./configure脚本提供--without-gssapi参数来禁用这种功能。

 

下载链接:

https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_11_31/HISTORY.md

https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_16_15/HISTORY.md

 

0x03 参考链接

https://kb.isc.org/docs/cve-2021-25216

https://us-cert.cisa.gov/ncas/current-activity/2021/04/29/isc-releases-security-advisory-bind

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-25216

 

0x04 时间线

2021-04-28  ISC发布安全公告

2021-04-30  VSRC发布安全通告

 

0x05 附录

 

CVSS评分标准官网:http://www.first.org/cvss/

image.png