{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-55990 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-55990 is a medium-severity vulnerability in Nlnetlabs Unbound, published on 22 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-55990 and fix it if it is affected.\n\nWhat it is: CVE-2026-55990 is a medium-severity vulnerability in Nlnetlabs Unbound, published on 22 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-55990 in the wild and no public exploit code.\n\nAffected product: Nlnetlabs Unbound. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-55990/ (Markdown: https://insights.sbomify.com/CVE-2026-55990/index.md)","id":"CVE-2026-55990","markdown":"https://insights.sbomify.com/CVE-2026-55990/index.md","name":"CVE-2026-55990","record":{"aliases":["AZL-92973","DEBIAN-CVE-2026-55990","ECHO-b416-47ad-fa4d","GHSA-hpr4-88jh-4pvx","UBUNTU-CVE-2026-55990"],"analysis":{"component_type":"server_software","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"yes","non_default_config":true,"product_category":"DNS resolver","requires_auth":"none","summary":"An unauthenticated attacker can crash the Unbound DNS server by sending a specific UDP packet if DNSCrypt is enabled with mismatched certificate and key configurations.","user_interaction":"not_required","vuln_class":"null_dereference"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"NLnet Labs","cpe":[{"product":"unbound","vendor":"nlnetlabs"}],"cvss":{"score":5.9,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H","version":"3.1"},"cwes":[{"id":"CWE-457","name":"Use of Uninitialized Variable"}],"description":"In NLnet Labs Unbound 1.7.0 up to and including 1.25.1, when the 'dnscrypt:' clause lists more 'dnscrypt-provider-cert:' files than there are matching 'dnscrypt-secret-key:' files, Unbound fills only the matched prefix and leaves the tail slots at the '0xdb' fill that libsodium's allocator writes into every allocation. Unbound would then iterate over the number of cert files, not the actual slots, so it walks into a slot with garbage data filled with '0xdb' bytes. Any unauthenticated client that sends one UDP datagram of ≥ 68 bytes whose first 8 bytes are '0xdb' to 'dnscrypt-port' will use that garbage entry which leads to a garbage dereference killing the server. This is a silent faulty configuration that goes unnoticed until triggered with the right client query. Unbound needs to be compiled with DNSCrypt support ('--enable-dnscrypt').","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Packet of death for a DNSCrypt misconfigured Unbound","id":"CVE-2026-55990","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":"nlnetlabs:unbound","products":["nlnetlabs:unbound"],"type":"null_dereference","year":"2026"},"n_packages":0,"n_references":1,"next":{"headline":"Remote DNS-over-QUIC (DoQ) flow-control assertion failure in libngtcp2","id":"CVE-2026-55991"},"packages":[],"prev":{"headline":"Gitea: OAuth2 sign-in reactivates an administrator-deactivated account on auth sources without refresh tokens (incomplete fix of #38009)","id":"CVE-2026-55987"},"products":["Unbound"],"published":"2026-07-22","related":[{"cvss_score":9.1,"headline":"Heap buffer overflow and possible Remote Code Execution when digesting DNSKEY","id":"CVE-2026-81642","kev_date_added":null,"published":"2026-09-16"},{"cvss_score":9.1,"headline":"Possible arbitrary code execution during DNSSEC validation","id":"CVE-2026-33278","kev_date_added":null,"published":"2026-05-20"},{"cvss_score":8.7,"headline":"Heap overflow with multiple NSID, COOKIE, PADDING EDNS options","id":"CVE-2026-42944","kev_date_added":null,"published":"2026-05-20"},{"cvss_score":8.7,"headline":"Crash during DNSSEC validation of malicious content","id":"CVE-2026-42959","kev_date_added":null,"published":"2026-05-20"},{"cvss_score":8.4,"headline":"CNAME synthesis could lead to heap corruption","id":"CVE-2026-82717","kev_date_added":null,"published":"2026-09-16"},{"cvss_score":7.5,"headline":"Possible heap buffer overflow during DNSSEC canonicalization","id":"CVE-2026-81634","kev_date_added":null,"published":"2026-09-16"},{"cvss_score":7.5,"headline":"Remote DNS-over-QUIC denial of service due to `quic-size` budget bypass","id":"CVE-2026-32665","kev_date_added":null,"published":"2026-07-22"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-07-22","vendors":["NLnet Labs"]},"summary":"An unauthenticated attacker can crash the Unbound DNS server by sending a specific UDP packet if DNSCrypt is enabled with mismatched certificate and key configurations.","url":"https://insights.sbomify.com/CVE-2026-55990/"}