CVE-2025-46420
Medium · 6.5CVSS
6.5
EPSS
0.6%
Published
Apr 24, 2025
CISA due date
—
Cloudanix analysis
A programming mistake in a common web-handling library can let specially crafted network messages slowly use up all available memory, potentially knocking services offline.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Memory leak in soup_header_parse_quality_list when parsing quality lists containing elements with all zeroes, leading to unbounded memory consumption and eventual denial of service.
Why it matters to the business
Applications may exhaust memory under normal or attacker-controlled traffic, causing service outages or degraded performance until restarted; the issue affects widely used networking components with high ecosystem prevalence.
How an attack unfolds
An attacker crafts HTTP requests or responses containing specially formatted Accept or similar headers whose quality list consists solely of zero-valued elements, repeatedly triggering the leaky parser path until memory pressure forces the process to crash or become unresponsive.
How to fix it
Upgrade github.com/apple/swift-asn1 (SwiftURL) to version 1.3.1 or later; rebuild and redeploy all dependent applications after the upgrade.
How to confirm the fix worked
Confirm the installed version of the affected package is at least 1.3.1; monitor memory usage under synthetic loads that include zero-valued quality lists to verify the leak is closed.
Typical attack path
- Identify a reachable endpoint that processes HTTP headers through the vulnerable parsing function
- Craft a request containing an Accept (or equivalent) header whose quality list contains only all-zero entries
- Send the request repeatedly or at volume to amplify memory consumption
- Observe service degradation or crash once memory limits are reached
How to detect it
Search application and system logs for repeated parsing of Accept or similar headers containing only zero quality values; correlate with memory-usage telemetry showing steady growth without corresponding traffic increases.
What your security team should do
- Prioritize upgrade to the fixed version within standard change windows given the DoS impact and public disclosure
- Add the vulnerable package to dependency scanning policies to block future regressions
- Review logging and monitoring for sudden memory spikes on services handling HTTP traffic
The record
A flaw was found in libsoup. It is vulnerable to memory leaks in the soup_header_parse_quality_list() function when parsing a quality list that contains elements with all zeroes.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | libsoup | 0 | 2.62.3-8.el8_10 |
| AlmaLinux:8 | libsoup-devel | 0 | 2.62.3-8.el8_10 |
| AlmaLinux:9 | libsoup | 0 | 2.72.0-10.el9_6.1 |
| AlmaLinux:9 | libsoup-devel | 0 | 2.72.0-10.el9_6.1 |
| Debian:11 | libsoup2.4 | 0 | No fix |
| Debian:12 | libsoup2.4 | 0 | No fix |
| Debian:12 | libsoup3 | 0 | No fix |
| Debian:13 | libsoup2.4 | 0 | No fix |
| Debian:13 | libsoup3 | 0 | 3.6.4-1 |
| Debian:14 | libsoup2.4 | 0 | 2.74.3-10.1 |
| Debian:14 | libsoup3 | 0 | 3.6.4-1 |
| SUSE:Enterprise Storage 7.1 | libsoup | 0 | 2.68.4-150200.4.6.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | libsoup | 0 | 2.68.4-150200.4.6.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Micro 5.2 | libsoup | 0 | 2.68.4-150200.4.6.1 |
| SUSE:Linux Enterprise Micro 5.3 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Micro 5.4 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Micro 5.5 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | libsoup | 0 | 3.4.4-150600.3.7.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | libsoup2 | 0 | 2.74.3-150600.4.6.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | libsoup | 0 | 3.4.4-150600.3.7.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | libsoup2 | 0 | 2.74.3-150600.4.6.1 |
| SUSE:Linux Enterprise Server 12 SP5-LTSS | libsoup | 0 | 2.62.2-5.12.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | libsoup | 0 | 2.68.4-150200.4.6.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Server 15 SP5-LTSS | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise Server 15 SP5-LTSS | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 | libsoup | 0 | 2.62.2-5.12.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | libsoup | 0 | 2.68.4-150200.4.6.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP5 | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP5 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Manager Proxy 4.3 | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Manager Proxy 4.3 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| SUSE:Manager Server 4.3 | libsoup | 0 | 3.0.4-150400.3.7.1 |
| SUSE:Manager Server 4.3 | libsoup2 | 0 | 2.74.2-150400.3.6.1 |
| openSUSE:Leap 15.6 | libsoup | 0 | 3.4.4-150600.3.7.1 |
| openSUSE:Leap 15.6 | libsoup2 | 0 | 2.74.3-150600.4.6.1 |
| openSUSE:Tumbleweed | libsoup2 | 0 | 2.74.3-9.1 |
Related vulnerabilities
- CVE-2025-4945 A flaw was found in the cookie parsing logic of the libsoup HTTP library, used in GNOME… Also affects libsoup
- CVE-2025-4948 A flaw was found in the soup_multipart_new_from_message() function of the libsoup HTTP… Also affects libsoup
- CVE-2025-46421 A flaw was found in libsoup. Also affects libsoup
- CVE-2025-32911 A use-after-free type vulnerability was found in libsoup, in the… Also affects libsoup
- CVE-2025-32914 A flaw was found in libsoup, where the soup_multipart_new_from_message() function is… Also affects libsoup
- CVE-2025-32906 A flaw was found in libsoup, where the soup_headers_parse_request() function may be… Also affects libsoup
- CVE-2025-32913 A flaw was found in libsoup, where the soup_message_headers_get_content_disposition()… Also affects libsoup
- CVE-2025-32053 A flaw was found in libsoup. Also affects libsoup