{"id":"CVE-2022-29222","aliases":["DEBIAN-CVE-2022-29222","EUVD-2022-5491","GHSA-w45j-f832-hxvh","GO-2022-0462","UBUNTU-CVE-2022-29222","USN-7966-1","USN-7966-2"],"status":"published","title":"Improper Certificate Validation in Pion DTLS","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","severity":{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00825,"percentile":0.577,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-295"],"published":"2022-05-21T00:00:15Z","modified":"2026-11-03T08:03:00Z","fixes":[{"ecosystem":"Go","package":"github.com/pion/dtls","fixed_in":["2.1.5"],"sources":["ghsa","osv"]},{"ecosystem":"Go","package":"github.com/pion/dtls/v2","fixed_in":["2.1.5"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"snowflake","fixed_in":["2.2.0-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"snowflake","fixed_in":["2.2.0-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"snowflake","fixed_in":["2.2.0-1"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:22.04:LTS","package":"snowflake","fixed_in":["1.1.0-2ubuntu0.1+esm2"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:22.04:LTS","package":"telegraf","fixed_in":["1.21.4+ds1-0ubuntu2+esm2"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/pion/dtls","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.5"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/pion/dtls/v2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.5"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"snowflake","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.0-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"snowflake","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.0-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"snowflake","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.0-1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/pion/dtls","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.1.5"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/pion/dtls/v2","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.1.5"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/pion/dtls/v2","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.1.5"}]}]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"snowflake","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0-2ubuntu0.1+esm2"}]}],"versions":["1.1.0-1","1.1.0-2","1.1.0-2ubuntu0.1","1.1.0-2ubuntu0.1+esm1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"telegraf","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.21.4+ds1-0ubuntu2+esm2"}]}],"versions":["1.19.2+ds1-0ubuntu1","1.21.2+ds1-0ubuntu1","1.21.4+ds1-0ubuntu1","1.21.4+ds1-0ubuntu2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"snowflake","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.1.0-2ubuntu0.1+esm2"}]}],"versions":["1.1.0-1","1.1.0-2","1.1.0-2ubuntu0.1","1.1.0-2ubuntu0.1+esm1"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"telegraf","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.21.4+ds1-0ubuntu2+esm2"}]}],"versions":["1.19.2+ds1-0ubuntu1","1.21.2+ds1-0ubuntu1","1.21.4+ds1-0ubuntu1","1.21.4+ds1-0ubuntu2"],"bundled":3}],"products":[{"vendor":"pion","product":"dtls"}],"references":[{"url":"https://github.com/pion/dtls/security/advisories/GHSA-w45j-f832-hxvh","tags":["x_refsource_CONFIRM","x_transferred","Third Party Advisory","advisory","web","report"]},{"url":"https://github.com/pion/dtls/commit/d2f797183a9f044ce976e6df6f362662ca722412","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://github.com/pion/dtls/releases/tag/v2.1.5","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-29222","tags":["advisory"]},{"url":"https://pkg.go.dev/vuln/GO-2022-0462","tags":["web"]},{"url":"https://github.com/advisories/GHSA-w45j-f832-hxvh"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/29xxx/CVE-2022-29222.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2022-29222","tags":["advisory"]},{"url":"github.com/pion/dtls","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2022-29222","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-29222","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-7966-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-7966-2","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2022-29189","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2022-29190","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2022-29222","title":"Improper Certificate Validation in Pion DTLS","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:00:15Z","modified":"2025-04-23T18:23:10.716Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-295"],"updated_at":"2026-11-02T14:34:36.270817Z"}],"euvd":[{"id":"EUVD-2022-5491","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:00:15Z","modified":"2025-04-23T18:23:10Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"updated_at":"2026-11-02T20:52:08.95736Z"}],"ghsa":[{"id":"GHSA-w45j-f832-hxvh","title":"Pion/DLTS Accepts Client Certificates Without CertificateVerify","description":"### Impact\nA DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. \n\nThis issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to v2.1.5\n\n### Patches\nUpgrade to Pion DTLS v2.1.5\n\n### Workarounds\nNo workarounds available, upgrade to Pion DTLS v2.1.5\n\n### References\nThank you to [Juho Nurminen](https://github.com/jupenur) and the Mattermost team for discovering and reporting this. \n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [Pion DTLS](http://github.com/pion/dtls)\n* Email us at [team@pion.ly](mailto:team@pion.ly)","status":"published","published":"2022-05-25T19:26:09Z","modified":"2023-08-29T23:28:43Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-295"],"updated_at":"2026-11-02T14:37:02.095916Z"}],"nvd":[{"id":"CVE-2022-29222","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:15:12.047Z","modified":"2026-06-17T04:39:51.763Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-295"],"updated_at":"2026-11-02T14:07:21.261605Z"}],"osv":[{"id":"CVE-2022-29222","title":"Improper Certificate Validation in Pion DTLS","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:00:15Z","modified":"2026-10-28T02:30:47.343840716Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-295"],"updated_at":"2026-11-02T15:44:25.164673Z"},{"id":"DEBIAN-CVE-2022-29222","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:15:12.047Z","modified":"2026-11-03T08:03:00.068224339Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"updated_at":"2026-11-03T08:24:39.643572Z"},{"id":"GHSA-w45j-f832-hxvh","title":"Pion/DLTS Accepts Client Certificates Without CertificateVerify","description":"### Impact\nA DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. \n\nThis issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to v2.1.5\n\n### Patches\nUpgrade to Pion DTLS v2.1.5\n\n### Workarounds\nNo workarounds available, upgrade to Pion DTLS v2.1.5\n\n### References\nThank you to [Juho Nurminen](https://github.com/jupenur) and the Mattermost team for discovering and reporting this. \n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [Pion DTLS](http://github.com/pion/dtls)\n* Email us at [team@pion.ly](mailto:team@pion.ly)","status":"published","published":"2022-05-25T19:26:09Z","modified":"2023-11-08T04:09:11.243676Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-295"],"updated_at":"2026-11-02T15:46:58.04805Z"},{"id":"UBUNTU-CVE-2022-29222","description":"Pion DTLS is a Go implementation of Datagram Transport Layer Security. Prior to version 2.1.5, a DTLS Client could provide a Certificate that it doesn't posses the private key for and Pion DTLS wouldn't reject it. This issue affects users that are using Client certificates only. The connection itself is still secure. The Certificate provided by clients can't be trusted when using a Pion DTLS server prior to version 2.1.5. Users should upgrade to version 2.1.5 to receive a patch. There are currently no known workarounds.","status":"published","published":"2022-05-21T00:15:00Z","modified":"2026-02-04T23:20:22.384264Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"updated_at":"2026-11-02T16:53:53.899276Z"},{"id":"GO-2022-0462","title":"Improper validation of client certificates in github.com/pion/dtls/v2","description":"Client-provided certificates are not correctly validated, and must not be trusted.\n\nDTLS client certificates must be accompanied by proof that the client possesses the private key for the certificate. The Pion DTLS server accepted client certificates unaccompanied by this proof, permitting an attacker to present any certificate and have it accepted as valid.","status":"published","published":"2022-07-01T20:07:12Z","modified":"2024-05-20T16:03:47Z","updated_at":"2026-11-02T15:47:00.918515Z"},{"id":"USN-7966-1","title":"snowflake vulnerabilities","description":"It was discovered that Pion DTLS, vendored in Snowflake, did not impose a limit\non the amount of data that was buffered during the handshake. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29189)\n\nIt was discovered that Pion DTLS, vendored in Snowflake, did not prevent the \nfragmentBuffer from processing zero length fragments. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29190)\n\nIt was discovered that Pion DTLS, vendored in Snowflake, did not require \nCertificateVerify when Client Cert was sent. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29222)","status":"published","published":"2026-01-19T10:35:20Z","modified":"2026-04-27T18:33:25.398774Z","updated_at":"2026-11-02T16:58:22.951676Z"},{"id":"USN-7966-2","title":"telegraf vulnerabilities","description":"USN-7966-1 fixed vulnerabilities in Snowflake. This update provides the\ncorresponding updates for Telegraf.\n\nOriginal advisory details:\n\nIt was discovered that Pion DTLS, vendored in Telegraf, did not impose a limit\non the amount of data that was buffered during the handshake. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29189)\n\nIt was discovered that Pion DTLS, vendored in Telegraf, did not prevent the\nfragmentBuffer from processing zero length fragments. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29190)\n\nIt was discovered that Pion DTLS, vendored in Telegraf, did not require\nCertificateVerify when Client Cert was sent. An attacker could\npossibly use the issue to cause a denial of service. (CVE-2022-29222)\n","status":"published","published":"2026-01-19T12:42:24Z","modified":"2026-04-27T18:33:59.51582Z","updated_at":"2026-11-02T16:58:22.951676Z"}]}}
