- Reported
-
- Issued
-
- Package
-
axum-core
(crates.io)
- Type
-
Vulnerability
- Categories
-
- Keywords
-
#ddos
#oom
- Aliases
-
- References
-
- Patched
-
>=0.2.8, <0.3.0-rc.1
>=0.3.0-rc.2
Description
<bytes::Bytes as axum_core::extract::FromRequest>::from_request
would not, by
default, set a limit for the size of the request body. That meant if a malicious
peer would send a very large (or infinite) body your server might run out of
memory and crash.
This also applies to these extractors which used Bytes::from_request
internally:
axum::extract::Form
axum::extract::Json
String
The fix is also in axum-core
0.3.0.rc.2
but 0.3.0.rc.1
is vulnerable.
Because axum
depends on axum-core
it is vulnerable as well. The vulnerable
versions of axum
are <= 0.5.15
and 0.6.0.rc.1
. axum
>= 0.5.16
and
>= 0.6.0.rc.2
does have the fix and are not vulnerable.
The patched versions will set a 2 MB limit by default.
Advisory available under CC0-1.0
license.