Bug 2268418 (CVE-2024-1931) - CVE-2024-1931 unbound: Infinite loop due to improper EDE message size check
Summary: CVE-2024-1931 unbound: Infinite loop due to improper EDE message size check
Keywords:
Status: NEW
Alias: CVE-2024-1931
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 2268419
Blocks: 2268420
TreeView+ depends on / blocked
 
Reported: 2024-03-07 12:20 UTC by Pedro Sampaio
Modified: 2024-03-18 12:07 UTC (History)
1 user (show)

Fixed In Version: unbound 1.19.2
Doc Type: If docs needed, set a value
Doc Text:
A vulnerability was found in Unbound. The issue arises due to a flaw in the handling of Extended DNS Error (EDE) records when the 'ede: yes' option is enabled, a non-default configuration. Specifically, an unchecked condition in the code can trigger an infinite loop when attempting to trim the text fields of EDE records to fit within the client's buffer size. This vulnerability could potentially lead to denial of service (DoS) as the infinite loop consumes system resources, impacting the availability of the Unbound DNS resolver.
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description Pedro Sampaio 2024-03-07 12:20:04 UTC
NLnet Labs Unbound version 1.18.0 up to and including version 1.19.1 contain a vulnerability that can cause denial of service by a certain code path that can lead to an infinite loop. Unbound 1.18.0 introduced a feature that removes EDE records from responses with size higher than the client's advertised buffer size. Before removing all the EDE records however, it would try to see if trimming the extra text fields on those records would result in an acceptable size while still retaining the EDE codes. Due to an unchecked condition, the code that trims the text of the EDE records could loop indefinitely. This happens when Unbound would reply with attached EDE information on a positive reply and the client's buffer size is smaller than the needed space to include EDE records. The vulnerability can only be triggered when the 'ede: yes' option is used; non default configuration. From version 1.19.2 on, the code is fixed to avoid looping indefinitely.

References:

https://www.nlnetlabs.nl/downloads/unbound/CVE-2024-1931.txt

Comment 1 Pedro Sampaio 2024-03-07 12:20:19 UTC
Created unbound tracking bugs for this issue:

Affects: fedora-all [bug 2268419]


Note You need to log in before you can comment on or make changes to this bug.