Every CVE Search/ Get API key

CVE-2021-28681

In github.com/pion/webrtc, failed DTLS certificate verification doesn't stop data channel communication

5.3 MediumFix available

Pion WebRTC before 3.0.15 didn't properly tear down the DTLS Connection when certificate verification failed. The PeerConnectionState was set to failed, but a user could ignore that and continue to use the PeerConnection. )A WebRTC implementation shouldn't allow the user to continue if verification has failed.)

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
None

Exploit likelihood

0.68%Unchanged since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 5.3

Pion WebRTC before 3.0.15 didn't properly tear down the DTLS Connection when certificate verification failed. The PeerConnectionState was set to failed, but a user could ignore that and continue to use the PeerConnection. )A WebRTC implementation shouldn't allow the user to continue if verification has failed.)

Record
CVE-2021-28681
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:P/A:N
Weakness
CWE-863
Updated
2026-11-02
CVE List No score

Pion WebRTC before 3.0.15 didn't properly tear down the DTLS Connection when certificate verification failed. The PeerConnectionState was set to failed, but a user could ignore that and continue to use the PeerConnection. )A WebRTC implementation shouldn't allow the user to continue if verification has failed.)

Record
CVE-2021-28681
Updated
2026-11-02
EUVDEUVD-2021-0985 No score

Pion WebRTC before 3.0.15 didn't properly tear down the DTLS Connection when certificate verification failed. The PeerConnectionState was set to failed, but a user could ignore that and continue to use the PeerConnection. )A WebRTC implementation shouldn't allow the user to continue if verification has failed.)

Record
EUVD-2021-0985
Updated
2026-11-03
GitHub AdvisoriesGHSA-74xm-qj29-cq8p 5.3

In github.com/pion/webrtc, failed DTLS certificate verification doesn't stop data channel communication

Impact

Data channel communication was incorrectly allowed with users who have failed DTLS certificate verification.

This attack requires

  • Attacker knows the ICE password.
  • Only take place during PeerConnection handshake.

This attack can be detected by monitoring PeerConnectionState in all versions of Pion WebRTC.

Patches

Users should upgrade to v3.0.15.

The exact patch is https://github.com/pion/webrtc/commit/545613dcdeb5dedb01cce94175f40bcbe045df2e

Workarounds

Users should listen for when PeerConnectionState changes to PeerConnectionStateFailed. When it enters this state users should not continue using the PeerConnection.

For more information

If you have any questions or comments about this advisory:

Thank you to https://github.com/Gaukas for discovering this.

Record
GHSA-74xm-qj29-cq8p
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-863
Updated
2026-11-02
OSV 5.3

Pion WebRTC before 3.0.15 didn't properly tear down the DTLS Connection when certificate verification failed. The PeerConnectionState was set to failed, but a user could ignore that and continue to use the PeerConnection. )A WebRTC implementation shouldn't allow the user to continue if verification has failed.)

Record
CVE-2021-28681
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02
OSVGHSA-74xm-qj29-cq8p 5.3

In github.com/pion/webrtc, failed DTLS certificate verification doesn't stop data channel communication

Impact

Data channel communication was incorrectly allowed with users who have failed DTLS certificate verification.

This attack requires

  • Attacker knows the ICE password.
  • Only take place during PeerConnection handshake.

This attack can be detected by monitoring PeerConnectionState in all versions of Pion WebRTC.

Patches

Users should upgrade to v3.0.15.

The exact patch is https://github.com/pion/webrtc/commit/545613dcdeb5dedb01cce94175f40bcbe045df2e

Workarounds

Users should listen for when PeerConnectionState changes to PeerConnectionStateFailed. When it enters this state users should not continue using the PeerConnection.

For more information

If you have any questions or comments about this advisory:

Thank you to https://github.com/Gaukas for discovering this.

Record
GHSA-74xm-qj29-cq8p
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-863
Updated
2026-11-02
OSVGO-2021-0104 No score

Authorization bypass in github.com/pion/webrtc/v3

Due to improper error handling, DTLS connections were not killed when certificate verification failed, causing users who did not check the connection state to continue to use the connection. This could allow allow an attacker which holds the ICE password, but not a valid certificate, to bypass this restriction.

Record
GO-2021-0104
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
github.com/pion/webrtc/v3
Go
before 3.0.15
3.0.15

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-28681 is a medium vulnerability (CVSS 5.3) in Webrtc Project Webrtc, published March 18, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.68%, the 52nd percentile. Fixed in github.com/pion/webrtc/v3 3.0.15.

References

MoveEnter Open