7.5
HIGH
CVE-2023-39533
Go-libp2p Large RSA Key Signature Verification Denial of Service
Description

go-libp2p is the Go implementation of the libp2p Networking Stack. Prior to versions 0.27.8, 0.28.2, and 0.29.1 malicious peer can use large RSA keys to run a resource exhaustion attack & force a node to spend time doing signature verification of the large key. This vulnerability is present in the core/crypto module of go-libp2p and can occur during the Noise handshake and the libp2p x509 extension verification step. To prevent this attack, go-libp2p versions 0.27.8, 0.28.2, and 0.29.1 restrict RSA keys to <= 8192 bits. To protect one's application, it is necessary to update to these patch releases and to use the updated Go compiler in 1.20.7 or 1.19.12. There are no known workarounds for this issue.

INFO

Published Date :

Aug. 8, 2023, 7:15 p.m.

Last Modified :

Oct. 31, 2023, 7:08 p.m.

Remotely Exploitable :

Yes !

Impact Score :

3.6

Exploitability Score :

3.9
Affected Products

The following products are affected by CVE-2023-39533 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Protocol libp2p
1 Libp2p go-libp2p
References to Advisories, Solutions, and Tools

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2023-39533 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2023-39533 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Modified by [email protected]

    May. 14, 2024

    Action Type Old Value New Value
  • Reanalysis by [email protected]

    Oct. 31, 2023

    Action Type Old Value New Value
    Changed Reference Type https://github.com/golang/go/commit/2350afd2e8ab054390e284c95d5b089c142db017 Patch https://github.com/golang/go/commit/2350afd2e8ab054390e284c95d5b089c142db017 Not Applicable, Patch
    Changed Reference Type https://github.com/golang/go/issues/61460 Issue Tracking, Vendor Advisory https://github.com/golang/go/issues/61460 Issue Tracking, Not Applicable, Vendor Advisory
    Changed CPE Configuration OR *cpe:2.3:a:golang:go:*:*:*:*:*:*:*:* versions up to (excluding) 1.19.12 *cpe:2.3:a:golang:go:*:*:*:*:*:*:*:* versions from (including) 1.20.0 up to (excluding) 1.20.7 *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions up to (excluding) 0.27.8 *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions from (including) 0.28.0 up to (excluding) 0.28.2 *cpe:2.3:a:libp2p:go-libp2p:0.29.0:*:*:*:*:go:*:* *cpe:2.3:a:quic_project:quic:*:*:*:*:*:go:*:* versions up to (excluding) 0.37.2 OR *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions up to (excluding) 0.27.8 *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions from (including) 0.28.0 up to (excluding) 0.28.2 *cpe:2.3:a:libp2p:go-libp2p:0.29.0:*:*:*:*:go:*:*
  • Initial Analysis by [email protected]

    Aug. 15, 2023

    Action Type Old Value New Value
    Added CVSS V3.1 NIST AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
    Changed Reference Type https://github.com/golang/go/commit/2350afd2e8ab054390e284c95d5b089c142db017 No Types Assigned https://github.com/golang/go/commit/2350afd2e8ab054390e284c95d5b089c142db017 Patch
    Changed Reference Type https://github.com/golang/go/issues/61460 No Types Assigned https://github.com/golang/go/issues/61460 Issue Tracking, Vendor Advisory
    Changed Reference Type https://github.com/libp2p/go-libp2p/commit/0cce607219f3710addc7e18672cffd1f1d912fbb No Types Assigned https://github.com/libp2p/go-libp2p/commit/0cce607219f3710addc7e18672cffd1f1d912fbb Patch
    Changed Reference Type https://github.com/libp2p/go-libp2p/commit/445be526aea4ee0b1fa5388aa65d32b2816d3a00 No Types Assigned https://github.com/libp2p/go-libp2p/commit/445be526aea4ee0b1fa5388aa65d32b2816d3a00 Patch
    Changed Reference Type https://github.com/libp2p/go-libp2p/commit/e30fcf7dfd4715ed89a5e68d7a4f774d3b9aa92d No Types Assigned https://github.com/libp2p/go-libp2p/commit/e30fcf7dfd4715ed89a5e68d7a4f774d3b9aa92d Patch
    Changed Reference Type https://github.com/libp2p/go-libp2p/pull/2454 No Types Assigned https://github.com/libp2p/go-libp2p/pull/2454 Exploit, Patch, Vendor Advisory
    Changed Reference Type https://github.com/libp2p/go-libp2p/security/advisories/GHSA-876p-8259-xjgg No Types Assigned https://github.com/libp2p/go-libp2p/security/advisories/GHSA-876p-8259-xjgg Patch, Vendor Advisory
    Changed Reference Type https://github.com/quic-go/quic-go/pull/4012 No Types Assigned https://github.com/quic-go/quic-go/pull/4012 Patch, Third Party Advisory
    Added CPE Configuration OR *cpe:2.3:a:golang:go:*:*:*:*:*:*:*:* versions up to (excluding) 1.19.12 *cpe:2.3:a:golang:go:*:*:*:*:*:*:*:* versions from (including) 1.20.0 up to (excluding) 1.20.7 *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions up to (excluding) 0.27.8 *cpe:2.3:a:libp2p:go-libp2p:*:*:*:*:*:go:*:* versions from (including) 0.28.0 up to (excluding) 0.28.2 *cpe:2.3:a:libp2p:go-libp2p:0.29.0:*:*:*:*:go:*:* *cpe:2.3:a:quic_project:quic:*:*:*:*:*:go:*:* versions up to (excluding) 0.37.2
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2023-39533 is associated with the following CWEs:

Exploit Prediction

EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.

0.20 }} 0.01%

score

0.57983

percentile

CVSS31 - Vulnerability Scoring System
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality
Integrity
Availability