Every CVESearch/Get API key

CVE-2025-53604

Rust Web Push is vulnerable to a DoS attack via a large integer in a Content-Length header

4.0 MediumFix available

The web-push crate before 0.10.3 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.41%Up 0.4 points since Jul 5, 2025
90%50%10%1%

What each source reports

CVE List Score used4.0

The web-push crate before 0.10.3 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header.

Record
CVE-2025-53604
CVSS 3.1
4.0 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
Weakness
CWE-130
Updated
2026-11-02
EUVDEUVD-2025-201004.0

The web-push crate before 0.10.3 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header.

Record
EUVD-2025-20100
CVSS 3.1
4.0 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-287x-9rff-qvcg4.0

Rust Web Push is vulnerable to a DoS attack via a large integer in a Content-Length header

The web-push crate before 0.10.4 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header. The patch was initially made available in version 0.10.3, but version 0.10.3 has since been yanked.

Record
GHSA-287x-9rff-qvcg
CVSS 3.1
4.0 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
Weakness
CWE-130
Updated
2026-11-02
GitHub AdvisoriesGHSA-fc83-9jwq-gc2m6.9

Web Push Denial of Service via malicious Web Push endpoint

Prior to version 0.10.3, the built-in clients of the web-push crate eagerly allocated memory based on the Content-Length header returned by the Web Push endpoint. Malicious Web Push endpoints could return a large Content-Length without ever having to send as much data, leading to denial of service by memory exhaustion.

Services providing Web Push notifications typically allow the user to register an arbitrary endpoint, so the endpoint should not be trusted.

The fixed version 0.10.3 now limits the amount of memory it will allocate for each response, limits the amount of data it will read from the endpoint, and returns an error if the endpoint sends too much data.

As before, it is recommended that services add a timeout for each request to Web Push endpoints.

Record
GHSA-fc83-9jwq-gc2m
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
NVD4.0

The web-push crate before 0.10.3 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header.

Record
CVE-2025-53604
CVSS 3.1
4.0 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
Weakness
CWE-130
Updated
2026-11-02
OSVGHSA-287x-9rff-qvcg4.0

Rust Web Push is vulnerable to a DoS attack via a large integer in a Content-Length header

The web-push crate before 0.10.4 for Rust allows a denial of service (memory consumption) in the built-in clients via a large integer in a Content-Length header. The patch was initially made available in version 0.10.3, but version 0.10.3 has since been yanked.

Record
GHSA-287x-9rff-qvcg
CVSS 3.1
4.0 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L
Weakness
CWE-130
Updated
2026-11-02
OSVGHSA-fc83-9jwq-gc2m6.9

Web Push Denial of Service via malicious Web Push endpoint

Prior to version 0.10.3, the built-in clients of the web-push crate eagerly allocated memory based on the Content-Length header returned by the Web Push endpoint. Malicious Web Push endpoints could return a large Content-Length without ever having to send as much data, leading to denial of service by memory exhaustion.

Services providing Web Push notifications typically allow the user to register an arbitrary endpoint, so the endpoint should not be trusted.

The fixed version 0.10.3 now limits the amount of memory it will allocate for each response, limits the amount of data it will read from the endpoint, and returns an error if the endpoint sends too much data.

As before, it is recommended that services add a timeout for each request to Web Push endpoints.

Record
GHSA-fc83-9jwq-gc2m
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Weakness
CWE-770
Updated
2026-11-02
OSVRUSTSEC-2025-0015No score

Denial of Service via malicious Web Push endpoint

Prior to version 0.10.3, the built-in clients of the web-push crate eagerly allocated memory based on the Content-Length header returned by the Web Push endpoint. Malicious Web Push endpoints could return a large Content-Length without ever having to send as much data, leading to denial of service by memory exhaustion.

Services providing Web Push notifications typically allow the user to register an arbitrary endpoint, so the endpoint should not be trusted.

The fixed version 0.10.3 now limits the amount of memory it will allocate for each response, limits the amount of data it will read from the endpoint, and returns an error if the endpoint sends too much data.

As before, it is recommended that services add a timeout for each request to Web Push endpoints.

Record
RUSTSEC-2025-0015
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
web-push
crates.io
through 0.10.2
0.10.4
web-push
crates.io
before 0.10.4
0.10.4
web-push
crates.io
0.0.0-0 up to 0.10.3
0.10.3

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2025-53604 is a medium vulnerability (CVSS 4.0) in Pimeys Web-push, published February 16, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.41%, the 35th percentile. Fixed in web-push 0.10.4.

References

MoveEnter Open