CVE-2019-20786 Improper Authenication in Pion DTLS
Attackers can inject unencrypted data after handshake completion in Pion DTLS due to missing epoch checks, bypassing encryption guarantees.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2019-20786?
CVE-2019-20786 is a critical vulnerability in n/a, published on 19 Apr 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
handleIncomingPacket in conn.go in Pion DTLS before 1.5.2 lacks a check for application data with epoch 0, which allows remote attackers to inject arbitrary unencrypted data after handshake completion.
Weakness: CWE-287
Which versions are affected by CVE-2019-20786?
3 open source packages ship an affected version, including github.com/pion/dtls. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
github.com/pion/dtls Go | All versions | 1.5.2 |
github.com/pion/dtls Go | All versions | 1.5.2 |
github.com/pion/dtls Go | All versions | 1.5.2 |
Products include Pion Dtls.
How do I fix CVE-2019-20786?
Upgrade github.com/pion/dtls to 1.5.2 or later.
Is CVE-2019-20786 being exploited?
There is no known exploitation of CVE-2019-20786 in the wild and no public exploit code.
Other vulnerabilities in n/a
- CVE-2022-29190 Header reconstruction method can be thrown into an infinite loop in Pion DTLS
- CVE-2026-26014 Pion DTLS uses random nonce generation with AES GCM ciphers risks leaking the authentication key
- CVE-2022-29222 Improper Certificate Validation in Pion DTLS
- CVE-2022-29189 Buffer for inbound DTLS fragments has no limit
Sources
Also known as GHSA-7gfg-6934-mqq2, GO-2020-0038.