UDP, by design, is a connection-less protocol that does not validate source IP addresses. Unless the application-layer protocol uses countermeasures such as session initiation in VOIP (voice over IP), it is very easy to forge the IP packet datagram to include an arbitrary source IP address [1]. When many UDP packets have their source IP address forged to the victim IP address, the destination server (or amplifier) responds to the victim (instead of the attacker), creating a reflected Denial of Service (DoS) Attack.
Recently, certain UDP protocols have been found to have particular responses to certain commands that are much larger than the initial request. Previously, attackers were limited linearly by the number of packets directly sent to the target to conduct a DoS attack; now a single packet can generate tens or hundreds of times the bandwidth in its response. This is called an amplification attack, and when combined with a reflective DoS attack on a large scale using multiple amplifiers and targeting a single victim, DDoS attacks can be conducted with relative ease.
To measure the potential effect of an amplification attack, a metric called the bandwidth amplification factor (BAF) is used. BAF can be calculated as the number of UDP payload bytes that an amplifier sends to answer a request, compared to the number of UDP payload bytes of the request [2] [3].
The list of known protocols—and their associated bandwidth amplification factors—are listed below. US-CERT offers thanks to Christian Rossow for providing this information. For more information on bandwidth amplification factors, please see Christian's blog and associated research paper.
Protocol | Bandwidth Amplification Factor | Vulnerable Command |
DNS |
28 to 54 |
see: TA13-088A [4] |
NTP |
556.9 |
see: TA14-013A [5] |
SNMPv2 |
6.3 |
GetBulk request |
NetBIOS |
3.8 |
Name resolution |
SSDP |
30.8 |
SEARCH request |
CharGEN |
358.8 |
Character generation request |
QOTD |
140.3 |
Quote request |
BitTorrent |
3.8 |
File search |
Kad |
16.3 |
Peer list exchange |
Quake Network Protocol |
63.9 |
Server info exchange |
Steam Protocol |
5.5 |
Server info exchange |
Multicast DNS (mDNS) |
2 to 10 |
Unicast query |
RIPv1 |
131.24 |
Malformed request |
Portmap (RPCbind) |
7 to 28 |
Malformed request |
In March 2015, Software Engineering Institute CERT issued Vulnerability Note (VU#550620) describing the use of mDNS in DRDoS attacks. Attackers can leverage mDNS by sending more information than can be handled by the device, thereby causing a DoS. [6]
In July 2015, Akamai Technologies' Prolexic Security Engineering and Research Team (PLXsert) issued a threat advisory describing a surge in DRDoS attacks using the Routing Information Protocol version one (RIPv1). Malicious actors are leveraging the behavior of RIPv1 for DDoS reflection through specially crafted request queries [7].
In August 2015, Level 3 Threat Research Labs reported a new form of DRDoS attack that uses portmap. Attackers leverage the behavior of the portmap service through spoofed requests and flood a victim’s network with UDP traffic. [8]