{"api_version":"1","generated_at":"2026-10-23T23:40:45+00:00","cve":"CVE-2026-35501","urls":{"html":"https://cve.report/CVE-2026-35501","api":"https://cve.report/api/cve/CVE-2026-35501.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-35501","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-35501"},"summary":{"title":"Bypass of a configured island trust anchor underneath an insecure parent from an atacker-controlled NSEC record.","description":"When NLnet Labs Unbound 1.0.1 up to and including version 1.26.1 is configured with both a root trust anchor and an additional 'trust-anchor:' for an island-of-security zone whose parent is provably insecure under the root chain, a malicious actor with a forged NSEC reply with the SOA bit cleared can trick Unbound to treat the configured trust island as insecure. This happens because the DNSSEC validator in Unbound accepts and caches the NSEC insecure response bypassing the RRSIG validation that the validator was supposed to do. The acceptance of the NSEC record at the trust anchor apex was allowed due to and old fix for type DS and NSEC queries from clients when trust anchor for that name existed.","state":"PUBLISHED","assigner":"NLnet Labs","published_at":"2026-10-21 09:17:07","updated_at":"2026-10-22 15:22:40"},"problem_types":["CWE-354","CWE-354 CWE-354: Improper Validation of Integrity Check Value"],"metrics":[{"version":"3.1","source":"sep@nlnetlabs.nl","type":"Secondary","score":"3.7","severity":"LOW","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","baseScore":3.7,"baseSeverity":"LOW","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"CVSS","score":"3.7","severity":"LOW","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","data":{"baseScore":3.7,"baseSeverity":"LOW","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","version":"3.1"}}],"references":[{"url":"https://www.nlnetlabs.nl/downloads/unbound/CVE-2026-35501.txt","name":"https://www.nlnetlabs.nl/downloads/unbound/CVE-2026-35501.txt","refsource":"sep@nlnetlabs.nl","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-35501","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-35501","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"NLnet Labs","product":"Unbound","version":"affected 1.0.1 1.26.2 semver","platforms":[]}],"timeline":[{"source":"CNA","time":"2026-05-13T00:00:00.000Z","lang":"en","value":"Issue reported by Qifan Zhang"},{"source":"CNA","time":"2026-06-08T00:00:00.000Z","lang":"en","value":"NLnet Labs shares patch"},{"source":"CNA","time":"2026-06-13T00:00:00.000Z","lang":"en","value":"Qifan Zhang verifies patch"},{"source":"CNA","time":"2026-10-21T00:00:00.000Z","lang":"en","value":"Fixes released with version 1.26.2"}],"solutions":[{"source":"CNA","title":"","value":"This issue is fixed starting with version 1.26.2","time":"","lang":"en"}],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"Qifan Zhang (Palo Alto Networks)","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"35501","cve":"CVE-2026-35501","epss":"0.001100000","percentile":"0.011980000","score_date":"2026-10-22","updated_at":"2026-10-23 00:07:30"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Unbound","vendor":"NLnet Labs","versions":[{"lessThan":"1.26.2","status":"affected","version":"1.0.1","versionType":"semver"}]}],"credits":[{"lang":"en","type":"finder","value":"Qifan Zhang (Palo Alto Networks)"}],"datePublic":"2026-10-21T00:00:00.000Z","descriptions":[{"lang":"en","value":"When NLnet Labs Unbound 1.0.1 up to and including version 1.26.1 is configured with both a root trust anchor and an additional 'trust-anchor:' for an island-of-security zone whose parent is provably insecure under the root chain, a malicious actor with a forged NSEC reply with the SOA bit cleared can trick Unbound to treat the configured trust island as insecure. This happens because the DNSSEC validator in Unbound accepts and caches the NSEC insecure response bypassing the RRSIG validation that the validator was supposed to do. The acceptance of the NSEC record at the trust anchor apex was allowed due to and old fix for type DS and NSEC queries from clients when trust anchor for that name existed."}],"metrics":[{"cvssV3_1":{"baseScore":3.7,"baseSeverity":"LOW","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","version":"3.1"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-354","description":"CWE-354: Improper Validation of Integrity Check Value","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-21T08:56:55.811Z","orgId":"206fc3a0-e175-490b-9eaa-a5738056c9f6","shortName":"NLnet Labs"},"references":[{"tags":["vendor-advisory"],"url":"https://www.nlnetlabs.nl/downloads/unbound/CVE-2026-35501.txt"}],"solutions":[{"lang":"en","value":"This issue is fixed starting with version 1.26.2"}],"timeline":[{"lang":"en","time":"2026-05-13T00:00:00.000Z","value":"Issue reported by Qifan Zhang"},{"lang":"en","time":"2026-06-08T00:00:00.000Z","value":"NLnet Labs shares patch"},{"lang":"en","time":"2026-06-13T00:00:00.000Z","value":"Qifan Zhang verifies patch"},{"lang":"en","time":"2026-10-21T00:00:00.000Z","value":"Fixes released with version 1.26.2"}],"title":"Bypass of a configured island trust anchor underneath an insecure parent from an atacker-controlled NSEC record.","x_generator":{"engine":"cvelib 1.8.0"}}},"cveMetadata":{"assignerOrgId":"206fc3a0-e175-490b-9eaa-a5738056c9f6","assignerShortName":"NLnet Labs","cveId":"CVE-2026-35501","datePublished":"2026-10-21T08:56:55.811Z","dateReserved":"2026-06-22T10:11:10.543Z","dateUpdated":"2026-10-21T08:56:55.811Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-21 09:17:07","lastModifiedDate":"2026-10-22 15:22:40","problem_types":["CWE-354","CWE-354 CWE-354: Improper Validation of Integrity Check Value"],"metrics":{"cvssMetricV31":[{"source":"sep@nlnetlabs.nl","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","baseScore":3.7,"baseSeverity":"LOW","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"NONE"},"exploitabilityScore":2.2,"impactScore":1.4}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"35501","Ordinal":"1","Title":"Bypass of a configured island trust anchor underneath an insecur","CVE":"CVE-2026-35501","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"35501","Ordinal":"1","NoteData":"When NLnet Labs Unbound 1.0.1 up to and including version 1.26.1 is configured with both a root trust anchor and an additional 'trust-anchor:' for an island-of-security zone whose parent is provably insecure under the root chain, a malicious actor with a forged NSEC reply with the SOA bit cleared can trick Unbound to treat the configured trust island as insecure. This happens because the DNSSEC validator in Unbound accepts and caches the NSEC insecure response bypassing the RRSIG validation that the validator was supposed to do. The acceptance of the NSEC record at the trust anchor apex was allowed due to and old fix for type DS and NSEC queries from clients when trust anchor for that name existed.","Type":"Description","Title":"Bypass of a configured island trust anchor underneath an insecur"}]}}}