Security advisory
NLnet Labs Unbound, up to and including version 1.16.1 is vulnerable to a novel type of the "ghost domain names" attack. The vulnerability works by targeting an Unbound instance. Unbound is queried for a subdomain of a rogue domain name. The rogue nameserver returns delegation information for the subdomain that updates Unbound's delegation cache. This action can be repeated before expiry of the delegation information by querying Unbound for a second level subdomain which the rogue nameserver provides new delegation information. Since Unbound is a child-centric resolver, the ever-updating child delegation information can keep a rogue domain name resolvable long after revocation. From version 1.16.2 on, Unbound checks the validity of parent delegation records before using cached delegation information.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2022-30698
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 07:55 UTC · Revision 1
Source evidence
NLnet Labs Unbound, up to and including version 1.16.1 is vulnerable to a novel type of the "ghost domain names" attack. The vulnerability works by targeting an Unbound instance. Unbound is queried for a subdomain of a rogue domain name. The rogue nameserver returns delegation information for the subdomain that updates Unbound's delegation cache. This action can be repeated before expiry of the delegation information by querying Unbound for a second level subdomain which the rogue nameserver provides new delegation information. Since Unbound is a child-centric resolver, the ever-updating child delegation information can keep a rogue domain name resolvable long after revocation. From version 1.16.2 on, Unbound checks the validity of parent delegation records before using cached delegation information.
osv:CVE-2022-30698
Complete source record
{
"id": "fb7522e0c14f44f78d57b742fe34cb4344573a0c55c414d42e2cba22d51cf813",
"url": "https://osv.dev/vulnerability/CVE-2022-30698",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2022-30698",
"summary": "NLnet Labs Unbound, up to and including version 1.16.1 is vulnerable to a novel type of the \"ghost domain names\" attack. The vulnerability works by targeting an Unbound instance. Unbound is queried for a subdomain of a rogue domain name. The rogue nameserver returns delegation information for the subdomain that updates Unbound's delegation cache. This action can be repeated before expiry of the delegation information by querying Unbound for a second level subdomain which the rogue nameserver provides new delegation information. Since Unbound is a child-centric resolver, the ever-updating child delegation information can keep a rogue domain name resolvable long after revocation. From version 1.16.2 on, Unbound checks the validity of parent delegation records before using cached delegation information.",
"evidence": "osv:CVE-2022-30698",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2022-30698",
"aliases": [
"CVE-2022-30698"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/nlnetlabs/unbound",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "cbed768b8ff9bfcf11089a5f1699b7e5707f1ea5"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:nlnetlabs:unbound:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "1.16.2"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"release-1.16.1rc1",
"release-1.16.1",
"release-1.16.0rc1",
"release-1.16.0",
"release-1.15.0rc1",
"release-1.15.0",
"release-1.14.0rc1",
"release-1.14.0",
"release-1.13.2",
"release-1.13.2rc1",
"release-1.13.1rc2",
"release-1.13.1",
"release-1.13.1rc1",
"release-1.13.0rc4",
"release-1.13.0rc3",
"release-1.13.0rc2",
"release-1.13.0rc1",
"release-1.12.0rc1",
"release-1.12.0",
"release-1.11.0rc1",
"release-1.11.0",
"1.11.0rc1",
"release-1.10.0rc2",
"release-1.10.0rc1",
"release-1.9.6",
"release-1.9.6rc1",
"release-1.9.3rc2",
"release-1.9.3",
"release-1.9.3rc1",
"release-1.9.2",
"release-1.9.2rc3",
"release-1.9.2rc1",
"release-1.9.2rc2",
"final-svn-state",
"release-1.9.1rc1",
"release-1.9.0rc1",
"release-1.8.2rc1",
"release-1.8.1rc1",
"release-1.8.0rc1",
"release-1.7.3rc1",
"release-1.7.2rc1",
"release-1.7.1rc1",
"release-1.7.0rc3",
"release-1.7.0rc2",
"release-1.7.0rc1",
"release-1.6.7",
"release-1.6.7rc1",
"release-1.6.6rc2",
"release-1.6.6rc1",
"release-1.6.4rc2",
"release-1.6.4rc1",
"release-1.6.2rc1",
"release-1.6.1rc3",
"release-1.6.1rc2",
"release-1.6.1rc1",
"release-1.6.0rc1",
"release-1.5.10rc1",
"release-1.5.10",
"release-1.5.9rc1",
"release-1.5.8rc1",
"release-1.5.8",
"release-1.5.7",
"release-1.5.6",
"release-1.5.6rc1",
"release-1.5.5",
"release-1.5.5rc1",
"release-1.5.4rc1",
"release-1.5.4",
"release-1.5.3rc1",
"release-1.5.2",
"release-1.5.2rc1",
"release-1.5.1",
"release-1.5.1rc2",
"release-1.5.1rc1",
"release-1.5.0rc1",
"release-1.4.22",
"release-1.4.22rc1",
"release-1.4.20",
"release-1.4.19",
"release-1.4.19rc1",
"release-1.4.18rc2",
"release-1.4.18rc1",
"release-1.4.17",
"release-1.4.17rc1",
"release-1.4.14",
"release-1.4.14rc1",
"release-1.4.13",
"release-1.4.13rc2",
"release-1.4.13rc1",
"release-1.4.12rc1",
"release-1.4.11rc3",
"release-1.4.11",
"release-1.4.11rc2",
"release-1.4.11rc1",
"release-1.4.9",
"release-1.4.9rc1",
"release-1.4.8rc1",
"release-1.4.7",
"release-1.4.7rc1",
"release-1.4.6",
"release-1.4.6rc1",
"release-1.4.5",
"release-1.4.5rc1",
"release-1.4.4",
"release-1.4.4rc1",
"release-1.4.3",
"release-1.4.2",
"release-1.4.1",
"release-1.4.0",
"release-1.4.0rc1",
"release-1.3.3",
"release-1.3.3rc1",
"release-1.3.2",
"release-1.3.1",
"release-1.1.1",
"release-1.0.1",
"release-0.11",
"release-0.10",
"release-0.8",
"release-0.7",
"release-0.6",
"release-0.5",
"release-0.4",
"release-0.3",
"release-0.1",
"release-0.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-30698.json"
}
}
],
"modified": "2026-10-24T10:31:00.423311700Z",
"provider": "osv",
"references": [
"https://lists.debian.org/debian-lts-announce/2023/03/msg00024.html",
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/5L3ZFWZZFPBIL654BG75RWXUMPFQJ5EC/",
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/D35CX4SCZVNKZTWJXPDFTHWZHINMGEZD/",
"https://security.gentoo.org/glsa/202212-02",
"https://www.nlnetlabs.nl/downloads/unbound/CVE-2022-30698_CVE-2022-30699.txt"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:fedoraproject:fedora:35:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:36:*:*:*:*:*:*:*"
],
"vendor_product": "fedoraproject:fedora",
"extracted_events": [
{
"range": [
{
"introduced": "35"
},
{
"last_affected": "35"
},
{
"introduced": "36"
},
{
"last_affected": "36"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2022-30698",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 439540,
"published_at": "2022-08-01T15:15:09.84+00:00"
}