CVE-2023-50387: Unbound: disclosure of CVE-2023-50387 and CVE-2023-50868 DNSSEC validation vulnerabilities

Published Feb 12, 2024
·
Updated

Certain DNSSEC aspects of the DNS protocol (in RFC 4033, 4034, 4035, 6840, and related RFCs) allow remote attackers to cause a denial of service (CPU consumption) via one or more DNSSEC responses, aka the "KeyTrap" issue. One of the concerns is that, when there is a zone with many DNSKEY and RRSIG records, the protocol specification implies that an algorithm must evaluate all combinations of DNSKEY and RRSIG records.

Other sources

ISC BIND is vulnerable to a denial of service, caused by an error when processing responses coming from specially crafted DNSSEC-signed zones. By flooding the target server with queries, a remote attacker could exploit this vulnerability to cause CPU exhaustion on a DNSSEC-validating resolver.

— IBM

MITRE: CVE-2023-50387 DNSSEC verification complexity can be exploited to exhaust CPU resources and stall DNS resolvers

— Microsoft

The processing of responses coming from specially crafted DNSSEC-signed zones can cause CPU exhaustion on a DNSSEC-validating resolver.

— Red Hat

Affected Software

86 affected componentsFixes available
redhat/bind<9.16.48
9.16.48
redhat/bind<9.18.24
9.18.24
redhat/bind<9.19.21
9.19.21
F5 BIG-IP>=17.1.0<=17.1.1
17.1.2
F5 BIG-IP>=16.1.0<=16.1.6
16.1.6.1
F5 BIG-IP>=15.1.0<=15.1.10
15.1.10.8
redhat Enterprise Linux=6.0
redhat Enterprise Linux=7.0
redhat Enterprise Linux=8.0
redhat Enterprise Linux=9.0
Microsoft Windows Server 2008=r2-sp1
Microsoft Windows Server 2012
Microsoft Windows Server 2012=r2
Microsoft Windows Server 2016
Microsoft Windows Server 2019
Microsoft Windows Server 2022
Microsoft Windows Server 2022 23h2
Fedoraproject Fedora=39
thekelleys dnsmasq<2.90
nic Knot Resolver<5.71
PowerDNS recursor>=4.8.0<4.8.6
PowerDNS recursor>=4.9.0<4.9.3
PowerDNS recursor>=5.0.0<5.0.2
ISC BIND>=9.0.0<=9.16.46
ISC BIND>=9.18.0<=9.18.22
ISC BIND>=9.19.0<=9.19.20
nlnetlabs Unbound<1.19.1
Microsoft Windows Server 2012 R2<6.3.9600.21813
6.3.9600.21813
Microsoft Windows Server 2012<6.2.9200.24710
6.2.9200.24710
Microsoft Windows Server 2012<6.2.9200.24710
6.2.9200.24710
Microsoft Windows Server 2008 R2<6.1.7601.26961
6.1.7601.26961
Microsoft Windows Server 2008 R2<6.1.7601.26961
6.1.7601.26961
Microsoft Windows Server 2022<10.0.20348.2322
10.0.20348.2322
Microsoft Windows Server 2016<10.0.14393.6709
10.0.14393.6709
Microsoft Windows Server 2012 R2<6.3.9600.21813
6.3.9600.21813
Microsoft Windows Server 2016<10.0.14393.6709
10.0.14393.6709
Microsoft Windows Server 2022<10.0.20348.2322
10.0.20348.2322
Microsoft Windows Server 2019<10.0.17763.5458
10.0.17763.5458
Microsoft Windows Server 2022, 23H2 Edition<10.0.25398.709
10.0.25398.709
Microsoft Windows Server 2019<10.0.17763.5458
10.0.17763.5458
alpine/bind>=9.0.0<9.16.48-r0
9.16.48-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/bind>=9.0.0<9.18.24-r0
9.18.24-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/dnsmasq<2.90-r0
2.90-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/knot-resolver<5.7.1-r0
5.7.1-r0
alpine/pdns-recursor<4.9.3-r0
4.9.3-r0
alpine/pdns-recursor<4.9.3-r0
4.9.3-r0
alpine/pdns-recursor<5.0.2-r0
5.0.2-r0
alpine/pdns-recursor<5.0.2-r0
5.0.2-r0
alpine/pdns-recursor<5.0.2-r0
5.0.2-r0
alpine/pdns-recursor<5.0.2-r0
5.0.2-r0
alpine/pdns-recursor<5.0.2-r0
5.0.2-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
alpine/unbound<1.19.1-r0
1.19.1-r0
debian/bind9
1:9.18.49-1~deb12u11:9.18.49-1~deb12u31:9.20.26-1~deb13u11:9.20.30-1~deb13u11:9.20.30-1
debian/dnsjava<=2.1.8-2
3.6.2-23.6.3-1
debian/dnsmasq
2.90-4~deb12u22.91-1+deb13u22.91-1+deb13u12.93-3
debian/knot-resolver
5.6.0-1+deb12u15.7.5-16.5.0-2
debian/pdns-recursor
4.8.8-1+deb12u15.2.13-0+deb13u15.4.9-1
debian/systemd
252.39-1~deb12u2252.38-1~deb12u1257.13-1~deb13u1262-1262.2-1
debian/unbound
1.17.1-2+deb12u41.17.1-2+deb12u31.22.0-2+deb13u31.26.2-0+deb13u11.26.2-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade redhat/bind to a version that resolves this vulnerability.

    Fixed in 9.16.48
  2. Upgrade

    Upgrade redhat/bind to a version that resolves this vulnerability.

    Fixed in 9.18.24
  3. Upgrade

    Upgrade redhat/bind to a version that resolves this vulnerability.

    Fixed in 9.19.21
  4. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 17.1.2
  5. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 16.1.6.1
  6. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 15.1.10.8
  7. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.3.9600.21813Patch KB5034819
  8. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.2.9200.24710Patch KB5034830
  9. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.1.7601.26961Patch KB5034809
  10. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.20348.2322Patch KB5034770
  11. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.14393.6709Patch KB5034767
  12. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.17763.5458Patch KB5034768
  13. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.25398.709Patch KB5034769
  14. Upgrade

    Upgrade alpine/bind to a version that resolves this vulnerability.

    Fixed in 9.16.48-r0
  15. Upgrade

    Upgrade alpine/bind to a version that resolves this vulnerability.

    Fixed in 9.18.24-r0
  16. Upgrade

    Upgrade alpine/dnsmasq to a version that resolves this vulnerability.

    Fixed in 2.90-r0
  17. Upgrade

    Upgrade alpine/knot-resolver to a version that resolves this vulnerability.

    Fixed in 5.7.1-r0
  18. Upgrade

    Upgrade alpine/pdns-recursor to a version that resolves this vulnerability.

    Fixed in 4.9.3-r0
  19. Upgrade

    Upgrade alpine/pdns-recursor to a version that resolves this vulnerability.

    Fixed in 5.0.2-r0
  20. Upgrade

    Upgrade alpine/unbound to a version that resolves this vulnerability.

    Fixed in 1.19.1-r0
  21. Upgrade

    Upgrade debian/bind9 to a version that resolves this vulnerability.

    Fixed in 1:9.18.49-1~deb12u1Fixed in 1:9.18.49-1~deb12u3Fixed in 1:9.20.26-1~deb13u1Fixed in 1:9.20.30-1~deb13u1Fixed in 1:9.20.30-1
  22. Upgrade

    Upgrade debian/dnsjava to a version that resolves this vulnerability.

    Fixed in 3.6.2-2Fixed in 3.6.3-1
  23. Upgrade

    Upgrade debian/dnsmasq to a version that resolves this vulnerability.

    Fixed in 2.90-4~deb12u2Fixed in 2.91-1+deb13u2Fixed in 2.91-1+deb13u1Fixed in 2.93-3
  24. Upgrade

    Upgrade debian/knot-resolver to a version that resolves this vulnerability.

    Fixed in 5.6.0-1+deb12u1Fixed in 5.7.5-1Fixed in 6.5.0-2
  25. Upgrade

    Upgrade debian/pdns-recursor to a version that resolves this vulnerability.

    Fixed in 4.8.8-1+deb12u1Fixed in 5.2.13-0+deb13u1Fixed in 5.4.9-1
  26. Upgrade

    Upgrade debian/systemd to a version that resolves this vulnerability.

    Fixed in 252.39-1~deb12u2Fixed in 252.38-1~deb12u1Fixed in 257.13-1~deb13u1Fixed in 262-1Fixed in 262.2-1
  27. Upgrade

    Upgrade debian/unbound to a version that resolves this vulnerability.

    Fixed in 1.17.1-2+deb12u4Fixed in 1.17.1-2+deb12u3Fixed in 1.22.0-2+deb13u3Fixed in 1.26.2-0+deb13u1Fixed in 1.26.2-1

Event History

Feb 13, 2024
CVE Published
via Ubuntu·12:00 AM
Data Sourced
via Ubuntu·12:00 AM
RemedyDescriptionSeverityAffected Software
Data Sourced
via Microsoft·08:00 AM
DescriptionSeverityWeaknessAffected Software
News Published
via The Register·11:27 PM
Feb 14, 2024
CVE Published
via MITRE·12:00 AM
Data Sourced
via MITRE·12:00 AM
Description
Data Sourced
via NVD·04:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Data Sourced
via OSV·04:15 PM
DescriptionSeverityAffected Software
Feb 17, 2024
News Published
via BleepingComputer·04:08 PM
Feb 18, 2024
Exploit Published
via GitHub·09:50 PM
Mar 26, 2024
News Published
via The Register·08:24 AM
Mar 29, 2024
Advisory Published
via F5·04:55 PM
Data Sourced
via F5·04:55 PM
DescriptionSeverityWeaknessAffected Software
Feb 4, 2025
Data Sourced
via IBM·12:00 AM
DescriptionAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

What is the severity of CVE-2023-50387?

CVE-2023-50387 has been assessed with a severity level that allows remote attackers to cause a denial of service.

2

What systems are affected by CVE-2023-50387?

CVE-2023-50387 affects multiple versions of Microsoft Windows Server, various DNS software including BIND and PowerDNS, and several Linux distributions.

3

How do I fix CVE-2023-50387?

To fix CVE-2023-50387, apply the specific patches and updates provided by your software vendor.

4

What is the nature of the vulnerability in CVE-2023-50387?

The vulnerability in CVE-2023-50387 originates from certain DNSSEC aspects of the DNS protocol that can be exploited for denial of service.

5

Are there any workarounds for CVE-2023-50387?

While updating is highly recommended, temporary network configurations to limit DNS response processing might serve as a workaround for CVE-2023-50387.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203