Memory Allocation with Excessive Size Value in github.com/gofiber/fiber
CVE-2025-54801
- github.com/gofiber/fiber
- github.com/gofiber/Fiber
- github.com/gofiber/fiber/v2
- github.com/gofiber/fiber/v3
- github.com/gofiber/Fiber/v2
- github.com/gofiber/Fiber/v3
- gofiber/fiber
Summary
Fiber is an Express inspired web framework written in Go. In versions through 2.52.8 and 3.0.0-beta.2 through 3.0.0-beta.3, when using Fiber's `Ctx.BodyParser` to parse form data containing a large numeric key that represents a slice index (e.g., `test.18446744073704`), the application crashes due to an out-of-bounds slice allocation in the underlying schema decoder. The root cause is that the decoder attempts to allocate a slice of length `idx + 1` without validating whether the index is within a safe or reasonable range. If the `idx` is excessively large, this leads to an Integer Overflow or Memory Exhaustion, causing a panic or crash.
- LOW
- NETWORK
- NONE
- NONE
CWE-789 - Memory Allocation with Excessive Size Value
The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.
References
Advisory Timeline
- Published