Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: GSA_kwCzR0hTQS01Zm05LWg3MjgtZndwas4AAzpS

trust-dns vulnerable to Remote Attackers causing Denial-of-Service (packet loops) with crafted DNS packets

trust-dns and trust-dns-server are vulnerable to remotely triggered denial-of-service attacks, consuming both network and CPU resources.
DNS messages with the QR=1 bit set are responded to with a FormErr response.
This allows creating a traffic loop, in which these FormErr responses are sent nonstop between vulnerable servers.

There are two scenarios how this can be exploited: 1) Create a loop between two instances of trust-dns, consuming network resources, or 2) consuming the CPU of a single instance.

With two instances A and B an attacker sends a DNS query with a spoofed source IP address to A.
A replies with a FormErr to B.
Now both servers with ping-pong the message back and forth until by chance the packet is dropped in the network.
Multiple spoofed packets can be sent by the attacker, increasing resource consumption.

A single server can get locked up replying to itself.
Same setup as above, but now A sends the reply to itself.
The packet is sent out as fast as the CPU and network stack manage.
This locks up a CPU core.
Multiple packets from the attacker consume multiple CPU cores.

Permalink: https://github.com/advisories/GHSA-5fm9-h728-fwpj
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS01Zm05LWg3MjgtZndwas4AAzpS
Source: GitHub Advisory Database
Origin: Unspecified
Severity: Moderate
Classification: General
Published: 11 months ago
Updated: 11 months ago


Identifiers: GHSA-5fm9-h728-fwpj
References: Repository: https://github.com/bluejekyll/trust-dns
Blast Radius: 0.0

Affected Packages

cargo:trust-dns-server
Dependent packages: 30
Dependent repositories: 167
Downloads: 808,677 total
Affected Version Ranges: >= 0.23.0-alpha.2, < 0.23.0-alpha.3, < 0.22.1
Fixed in: 0.23.0-alpha.3, 0.22.1
All affected versions: 0.9.0, 0.9.3, 0.10.0, 0.10.1, 0.10.2, 0.10.3, 0.10.5, 0.10.6, 0.10.7, 0.10.8, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.15.1, 0.16.0, 0.16.1, 0.17.0, 0.18.0, 0.18.1, 0.19.0, 0.19.1, 0.19.2, 0.19.3, 0.19.4, 0.19.5, 0.19.6, 0.19.7, 0.20.0, 0.20.1, 0.20.2, 0.20.3, 0.20.4, 0.21.0, 0.21.1, 0.21.2, 0.22.0, 0.23.0-alpha.2
All unaffected versions: 0.22.1, 0.23.0, 0.23.1, 0.23.2