CVE-2025-5399
NoneCVSS
—
EPSS
1.4%
Published
Jun 7, 2025
CISA due date
—
Cloudanix analysis
A bug in a widely used networking library can let a malicious server freeze programs that connect to it, forcing administrators to manually restart those programs to restore service.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
A malicious WebSocket server can send a crafted packet that traps libcurl in an infinite busy-loop with no programmatic escape, forcing termination of the affected thread or process.
Why it matters to the business
Applications relying on libcurl for WebSocket connections can be rendered unresponsive, requiring manual intervention to recover and potentially causing service outages or degraded availability for dependent systems.
How an attack unfolds
An attacker hosts a malicious WebSocket server and waits for a vulnerable libcurl-based client to connect; once connected the server transmits a specially crafted packet that triggers the loop condition, locking the client process until it is killed.
How to fix it
Upgrade libcurl to a fixed version such as commit fdb8a789d2b446b77bd7cdd2eff95f6cbc814cf4 or apply the corresponding Ubuntu package updates for libice on the listed releases (2:1.0.9-1ubuntu0.16.04.1+esm1 or 2:1.0.9-2ubuntu0.18.04.1). Rebuild and redeploy any statically linked applications after updating the library.
How to confirm the fix worked
Confirm the installed libcurl version is at or above the fixed commit or package revision, then test WebSocket functionality against a server that previously triggered the loop to verify normal operation and exit behavior.
Typical attack path
- Attacker deploys a WebSocket server that responds with a maliciously formatted packet
- Victim application using libcurl initiates a WebSocket connection to the attacker-controlled endpoint
- Server sends the crafted packet during the WebSocket handshake or data exchange
- libcurl enters an endless busy-loop and ceases to process further requests or respond
- Application becomes unresponsive until the process or thread is externally terminated
How to detect it
Look for curl or application processes consuming 100% CPU while performing WebSocket operations with no progress in logs; correlate with outbound connections to unexpected WebSocket endpoints and absence of normal data transfer after connection establishment.
What your security team should do
- Prioritize patching libcurl in all environments that perform WebSocket operations
- Inventory applications statically or dynamically linking libcurl and schedule upgrades
- Monitor for high-CPU processes involving libcurl or curl during WebSocket usage as a temporary detection signal
- Apply network-level controls to restrict outbound WebSocket connections to trusted endpoints until patches are deployed
The record
Due to a mistake in libcurl's WebSocket code, a malicious server can send a particularly crafted packet which makes libcurl get trapped in an endless busy-loop. There is no other way for the application to escape or exit this loop other than killing the thread/process. This might be used to DoS libcurl-using application.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:10 | mysql-selinux | 0 | 1.0.14-1.el10_0 |
| AlmaLinux:10 | mysql8.4 | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-common | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-devel | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-errmsg | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-libs | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-server | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-test | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:10 | mysql8.4-test-data | 0 | 8.4.6-2.el10_0 |
| AlmaLinux:9 | mecab | 0 | 0.996-3.module_el9.6.0+152+8cbce00c.4 |
| AlmaLinux:9 | mecab-devel | 0 | 0.996-3.module_el9.6.0+152+8cbce00c.4 |
| AlmaLinux:9 | mecab-ipadic | 0 | 2.7.0.20070801-24.module_el9.6.0+152+8cbce00c |
| AlmaLinux:9 | mecab-ipadic-EUCJP | 0 | 2.7.0.20070801-24.module_el9.6.0+152+8cbce00c |
| AlmaLinux:9 | mysql | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-common | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-devel | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-errmsg | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-libs | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-server | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-test | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | mysql-test-data | 0 | 8.4.6-1.module_el9.6.0+180+a4e757e5 |
| AlmaLinux:9 | rapidjson-devel | 0 | 1.1.0-19.module_el9.6.0+152+8cbce00c |
| AlmaLinux:9 | rapidjson-doc | 0 | 1.1.0-19.module_el9.6.0+152+8cbce00c |
| Alpine:v3.22 | curl | 0 | 8.14.1-r0 |
| Debian:13 | curl | 0 | No fix |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | curl | 0 | 8.14.1-150600.4.28.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | curl | 0 | 8.14.1-150600.4.28.1 |
| openSUSE:Leap 15.6 | curl | 0 | 8.14.1-150600.4.28.1 |
| openSUSE:Tumbleweed | curl | 0 | 8.14.1-4.1 |
Related vulnerabilities
- CVE-2025-30715 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Components… Also affects mysql-selinux
- CVE-2025-30722 Vulnerability in the MySQL Client product of Oracle MySQL (component: Client: mysqldump). Also affects mysql-selinux
- CVE-2025-30721 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: UDF). Also affects mysql-selinux
- CVE-2025-30699 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Stored… Also affects mysql-selinux
- CVE-2025-30705 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: PS). Also affects mysql-selinux
- CVE-2025-30704 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Components… Also affects mysql-selinux
- CVE-2025-30703 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Also affects mysql-selinux
- CVE-2025-30695 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Also affects mysql-selinux