Rust advisories / web-push
Vulnerability MediumRUSTSEC-2025-0015 · web-push
RUSTSEC-2025-0015: Denial of Service via malicious Web Push endpoint
Short answerA security vulnerability in the web-push crate: Denial of Service via malicious Web Push endpoint. GitHub rates it Medium. Fixed in 0.10.3: update to a fixed version.
| Crate | web-push |
|---|---|
| Type | Vulnerability (denial-of-service) |
| Affected versions | Before 0.10.3. |
| Fixed in | 0.10.3 |
| Severity | Medium (GitHub rating) |
| Published | 2025-02-16 |
| Last changed | 2025-10-28 |
| Also known as | CVE-2025-53604, GHSA-287x-9rff-qvcg, GHSA-fc83-9jwq-gc2m |
What to do
- See which version you have:
cargo tree -i web-push(it also shows which of your dependencies pulls it in). - Update within your version requirement:
cargo update -p web-push. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for exampleweb-push = "0.10.3") or update the dependency that pulls it in. - Check again with
cargo audit, or paste your Cargo.lock into our Cargo.toml checker.
Details from the advisory
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.
References
- Package: crates.io/crates/web-push
- Advisory: rustsec.org/advisories/RUSTSEC-2025-0015.html
- Web: github.com/pimeys/rust-web-push/pull/68
From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.
Up next
Are you affected?Check your whole dependency treePaste Cargo.lock: every advisory, for your exact versions.Read it next →Also worth your time
Did this answer your question?