A multi-vendor cache poisoning vulnerability named 'Rebirthday Attack' has been discovered in caching resolvers that support EDNS Client Subnet (ECS). Unbound is also vulnerable when compiled with ECS support, i.e., '--enable-subnet', AND configured to send ECS information along with queries to upstream name servers, i.e., at least one of the 'send-client-subnet', 'client-subnet-zone' or 'client-subnet-always-forward' options is used. Resolvers supporting ECS need to segregate outgoing queries to accommodate for different outgoing ECS information. This re-opens up resolvers to a birthday paradox attack (Rebirthday Attack) that tries to match the DNS transaction ID in order to cache non-ECS poisonous replies.
{
"binaries": [
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "libunbound8"
},
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "unbound"
},
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.13.1-1ubuntu5.11",
"binary_name": "unbound-host"
}
],
"availability": "No subscription required"
}{
"binaries": [
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "libunbound8"
},
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "unbound"
},
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.19.2-1ubuntu3.5",
"binary_name": "unbound-host"
}
],
"availability": "No subscription required"
}{
"binaries": [
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "libunbound8"
},
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "unbound"
},
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.22.0-1ubuntu1.1",
"binary_name": "unbound-host"
}
],
"availability": "No subscription required"
}{
"binaries": [
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "libunbound8"
},
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "unbound"
},
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.22.0-2ubuntu1",
"binary_name": "unbound-host"
}
],
"availability": "No subscription required"
}{
"binaries": [
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "libunbound2"
},
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "python-unbound"
},
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "unbound"
},
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.4.22-1ubuntu4.14.04.3+esm2",
"binary_name": "unbound-host"
}
]
}{
"binaries": [
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "libunbound2"
},
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "python-unbound"
},
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "unbound"
},
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.5.8-1ubuntu1.1+esm2",
"binary_name": "unbound-host"
}
]
}{
"binaries": [
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "libunbound2"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "python-unbound"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "unbound"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.6.7-1ubuntu2.6+esm3",
"binary_name": "unbound-host"
}
]
}{
"binaries": [
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "libunbound-dev"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "libunbound8"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "python-unbound"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "python3-unbound"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "unbound"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "unbound-anchor"
},
{
"binary_version": "1.9.4-2ubuntu1.11",
"binary_name": "unbound-host"
}
]
}