Security advisory
In NLnet Labs Routinator prior to 0.10.2, a validation run can be delayed significantly by an RRDP repository by not answering but slowly drip-feeding bytes to keep the connection alive. This can be used to effectively stall validation. While Routinator has a configurable time-out value for RRDP connections, this time-out was only applied to individual read or write operations rather than the complete request. Thus, if an RRDP repository sends a little bit of data before that time-out expired, it can continuously extend the time it takes for the request to finish. Since validation will only continue once the update of an RRDP repository has concluded, this delay will cause validation to stall, leading to Routinator continuing to serve the old data set or, if in the initial validation run directly after starting, never serve any data at all.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2021-43173
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 07:12 UTC · Revision 1
Source evidence
In NLnet Labs Routinator prior to 0.10.2, a validation run can be delayed significantly by an RRDP repository by not answering but slowly drip-feeding bytes to keep the connection alive. This can be used to effectively stall validation. While Routinator has a configurable time-out value for RRDP connections, this time-out was only applied to individual read or write operations rather than the complete request. Thus, if an RRDP repository sends a little bit of data before that time-out expired, it can continuously extend the time it takes for the request to finish. Since validation will only continue once the update of an RRDP repository has concluded, this delay will cause validation to stall, leading to Routinator continuing to serve the old data set or, if in the initial validation run directly after starting, never serve any data at all.
osv:CVE-2021-43173
Complete source record
{
"id": "aa19ca05806cf564c9f14dcb30f442d59d8cc2f26e5a5d86db860a109ec738a3",
"url": "https://osv.dev/vulnerability/CVE-2021-43173",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2021-43173",
"summary": "In NLnet Labs Routinator prior to 0.10.2, a validation run can be delayed significantly by an RRDP repository by not answering but slowly drip-feeding bytes to keep the connection alive. This can be used to effectively stall validation. While Routinator has a configurable time-out value for RRDP connections, this time-out was only applied to individual read or write operations rather than the complete request. Thus, if an RRDP repository sends a little bit of data before that time-out expired, it can continuously extend the time it takes for the request to finish. Since validation will only continue once the update of an RRDP repository has concluded, this delay will cause validation to stall, leading to Routinator continuing to serve the old data set or, if in the initial validation run directly after starting, never serve any data at all.",
"evidence": "osv:CVE-2021-43173",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2021-43173",
"aliases": [
"CVE-2021-43173"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/nlnetlabs/routinator",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "a21540221d0223150240e705ec200c4915d0f4ad"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:nlnetlabs:routinator:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "0.10.2"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"v0.10.1",
"v0.10.1-rc3",
"v0.10.1-rc2",
"v0.10.1-rc1",
"v0.10.0",
"v0.10.0-rc3",
"v0.10.0-rc2",
"v0.10.0-rc1",
"v0.9.0",
"0.9.0",
"v0.9.0-rc3",
"v0.9.0-rc2",
"v0.9.0-rc1",
"v0.8.2",
"v0.8.2-rc1",
"v0.8.1",
"v0.8.1-rc1",
"v0.8.0",
"v0.8.0-rc2",
"v0.8.0-rc1",
"v0.7.1",
"v0.7.1-rc2",
"v0.7.1-rc1",
"v0.7.0",
"v0.7.0-rc3",
"v0.7.0-rc2",
"v0.7.0-rc1",
"v0.6.4",
"v0.6.3",
"v0.6.2",
"v0.6.1",
"v0.6.0",
"v0.5.0",
"v0.4.0",
"v0.3.3",
"v0.3.2",
"v0.3.1",
"v0.3.0",
"v0.2.1",
"v0.2.0",
"v0.1.2",
"v0.1.1",
"v0.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-43173.json"
}
}
],
"modified": "2026-10-24T10:30:50.116292133Z",
"provider": "osv",
"references": [
"https://www.debian.org/security/2021/dsa-5033",
"https://www.debian.org/security/2022/dsa-5041",
"https://www.nlnetlabs.nl/downloads/routinator/CVE-2021-43172_CVE-2021-43173_CVE-2021-43174.txt"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*"
],
"vendor_product": "debian:debian_linux",
"extracted_events": [
{
"range": [
{
"introduced": "11.0"
},
{
"last_affected": "11.0"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2021-43173",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 437150,
"published_at": "2021-11-09T17:15:07.733+00:00"
}