CVE-2025-58369: typelevel fs2 · Uncontrolled Resource Consumption
Affects typelevel fs2Source CVE Database V5
Not known to be exploited · CVSS 5.3 Medium : upgrade to 2.5.13 when convenient.
Data as of 26 Oct 2026, 09:08 UTC
- EPSS
- 0.4% chance of exploitation in 30 days – higher than 38% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 2.5.13
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LExploitation evidence
Disclosed: evidence found.
CVE published 5 Sep 2025
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade typelevel fs2 to 2.5.13.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| typelevel fs2 | Affected
| Fixed in
|
AI-suggested
The primary mitigation is to upgrade the fs2 library to a fixed version: 2.5.13, 3.12.1, or 3.13.0-M7 or later. Organizations should audit their codebases and dependencies to identify usage of vulnerable fs2 versions, especially in JVM applications handling TLS streams. Implementing robust monitoring of CPU utilization and network socket states can help detect anomalous spin loops indicative of exploitation attempts. Network-level protections such as rate limiting or connection throttling on TLS endpoints may reduce the risk of resource exhaustion. Employing circuit breakers or timeout mechanisms in the application logic to detect stalled TLS handshakes can prevent indefinite CPU consumption. Additionally, conducting regular dependency updates and integrating vulnerability scanning into CI/CD pipelines will help prevent future exposure. For critical infrastructure, consider isolating vulnerable services behind load balancers or proxies that can absorb or mitigate denial of service attempts until patches are applied.
Description
fs2 is a compositional, streaming I/O library for Scala. Versions up to and including 2.5.12, 3.0.0-M1 through 3.12.2, and 3.13.0-M1 through 3.13.0-M6 are vulnerable to denial of service attacks though TLS sessions using fs2-io on the JVM using the fs2.io.net.tls package. When establishing a TLS session, if one side of the connection shuts down `write` while the peer side is awaiting more data to progress the TLS handshake, the peer side will spin loop on the socket read, fully utilizing a CPU. The CPU is consumed until the overall connection is closed, potentially shutting down a fs2-io powered server. This issue is fixed in versions 2.5.13, 3.12.1, and 3.13.0-M7.
References
- github.com/typelevel/fs2/security/advisories/GHSA-rrw2-px9j-qffj (opens in a new tab)
- github.com/typelevel/fs2/issues/3590 (opens in a new tab)
- github.com/typelevel/fs2/commit/46e2dc3abf994dcf3d0b804b2ddb3c10c04d4976 (opens in a new tab)
- github.com/typelevel/fs2/commit/5c6c4c6c1ef330f7e6b53661ecc63d5f5ba8885c (opens in a new tab)
- github.com/typelevel/fs2/commit/edf0c4f2e660360d1c1a8c5377ce32294de89238 (opens in a new tab)
- github.com/typelevel/fs2/releases/tag/v3.12.2 (opens in a new tab)
- github.com/typelevel/fs2/releases/tag/v3.13.0-M7 (opens in a new tab)