CVE-2020-8622 Overview
CVE-2020-8622 is a denial of service vulnerability affecting ISC BIND, one of the most widely deployed DNS server software packages. The vulnerability allows an attacker positioned on the network path for a TSIG-signed request, or operating the server receiving the TSIG-signed request, to send a truncated response that triggers an assertion failure, causing the DNS server to terminate unexpectedly.
An off-path attacker could also exploit this vulnerability, although it would require correctly guessing the timing of TSIG-signed requests along with other packet and message characteristics, then spoofing a truncated response to trigger the assertion failure.
Critical Impact
Successful exploitation causes the BIND DNS server to crash, resulting in denial of service for all DNS resolution dependent on the affected server. This can cascade to affect all services relying on DNS resolution in the target infrastructure.
Affected Products
- ISC BIND 9.0.0 through 9.11.21
- ISC BIND 9.12.0 through 9.16.5
- ISC BIND 9.17.0 through 9.17.3
- ISC BIND Supported Preview Edition 9.9.3-S1 through 9.11.21-S1
- Fedora 31 and 32
- Debian Linux 9.0 and 10.0
- Canonical Ubuntu Linux 12.04, 14.04, 16.04, 18.04, and 20.04
- openSUSE Leap 15.1 and 15.2
- Synology DNS Server
- NetApp SteelStore Cloud Integrated Storage
- Oracle Communications Diameter Signaling Router
Discovery Timeline
- August 21, 2020 - CVE-2020-8622 published to NVD
- November 21, 2024 - Last updated in NVD database
Technical Details for CVE-2020-8622
Vulnerability Analysis
This vulnerability is classified as CWE-617 (Reachable Assertion), where the BIND DNS server contains an assertion that can be triggered by malicious input, causing the server process to terminate. The vulnerability specifically affects the handling of TSIG (Transaction Signature) signed DNS responses.
TSIG provides authentication for DNS messages through cryptographic signatures. When a DNS server sends a TSIG-signed query and receives a truncated response, the assertion failure occurs due to improper validation of the truncated response structure. The flaw exists in how BIND processes the TC (truncation) flag in responses to TSIG-signed requests.
Root Cause
The root cause is an assertion failure in the BIND code that handles truncated responses to TSIG-signed requests. When processing a truncated DNS response, the server's internal validation logic triggers an assertion that causes the named process to abort. This represents a failure to gracefully handle malformed or unexpected response conditions in the TSIG response processing code path.
The assertion is reachable because the code does not properly validate the response structure before performing operations that assume certain conditions are met. When a truncated response violates these implicit assumptions, the assertion fails rather than returning an error gracefully.
Attack Vector
The attack can be executed via two primary methods:
On-path Attack: An attacker with network visibility to TSIG-signed DNS requests can intercept legitimate queries and inject truncated responses. This is the more reliable attack vector as the attacker can observe the exact timing and characteristics of requests.
Off-path Attack: A remote attacker without network visibility would need to correctly predict when a TSIG-signed request is sent, determine packet characteristics, and successfully spoof a truncated response. While more difficult, this attack remains feasible against servers with predictable query patterns.
The vulnerability is exploited by crafting a DNS response with the TC (truncation) flag set in a manner that triggers the assertion failure when the BIND server processes it as a response to a TSIG-authenticated query.
Detection Methods for CVE-2020-8622
Indicators of Compromise
- Unexpected named process crashes or restarts in system logs
- Assertion failure messages in BIND log files referencing TSIG or truncated response handling
- DNS service availability interruptions correlated with inbound DNS traffic patterns
- Core dump files from the named process indicating assertion failures
Detection Strategies
- Monitor for BIND daemon crashes using process monitoring tools and alert on unexpected restarts
- Implement log analysis for assertion failure messages in /var/log/syslog or BIND-specific log files
- Deploy network monitoring to detect unusual patterns of truncated DNS responses
- Use DNS query logging to identify suspicious TSIG-signed query/response patterns
Monitoring Recommendations
- Configure BIND logging to capture detailed query and response information for forensic analysis
- Set up automated alerting for named service failures using systemd service monitoring or equivalent
- Implement DNS traffic analysis to baseline normal TSIG usage and detect anomalies
- Monitor for repeated DNS service restarts which may indicate ongoing exploitation attempts
How to Mitigate CVE-2020-8622
Immediate Actions Required
- Upgrade ISC BIND to versions 9.11.22, 9.16.6, 9.17.4, or later immediately
- Apply distribution-specific security updates from Debian, Ubuntu, Fedora, openSUSE, or your Linux distribution
- Review and restrict network access to DNS servers using firewall rules where possible
- Implement DNS server redundancy to minimize service impact during potential attacks
Patch Information
ISC has released patched versions of BIND that address this vulnerability. Users should upgrade to the following minimum versions:
- BIND 9.11.22 or later (for 9.11.x branch)
- BIND 9.16.6 or later (for 9.16.x branch)
- BIND 9.17.4 or later (for 9.17.x development branch)
- BIND Supported Preview Edition 9.11.22-S1 or later
Patches are available through the ISC Knowledge Base. Linux distribution users should apply updates via their package managers:
- Ubuntu: USN-4468-1 and USN-4468-2
- Debian: DSA-4752 and DLA-2355
- Gentoo: GLSA 202008-19
Workarounds
- Restrict TSIG-signed query usage to trusted internal networks only if TSIG is not required externally
- Implement network segmentation to limit exposure of DNS servers to untrusted network paths
- Deploy intrusion detection systems to monitor for DNS-based attack patterns
- Configure automated service recovery to minimize downtime in case of exploitation
# Example: Restart BIND service automatically on failure (systemd)
sudo systemctl edit named.service
# Add these lines in the override file:
[Service]
Restart=on-failure
RestartSec=5s
# Save and reload systemd
sudo systemctl daemon-reload
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


