GHSA-f48p-c9v4-h7xv: Go/github.com/labstack/echo/v4 vulnerability

Published Oct 23, 2026
·
Updated

Impact

Echo v4's opt-in BodyDump middleware read complete request bodies into memory and retained complete response bodies without a capture limit. A client able to submit large requests to a route using BodyDump could cause large allocations before the application handler ran. Large responses, including responses whose size can be influenced by a client, also caused an additional unbounded capture allocation.

Repeated or concurrent requests can exhaust process memory and cause denial of service. BodyDump is not enabled by default. Deployments with effective request limits may reduce the request-side exposure; response capture requires separate consideration.

Affected versions and patch

Echo v4 versions through v4.16.0 are affected. Upgrade to v4.16.1.

The patch adds BodyDumpConfig.MaxRequestBytes and MaxResponseBytes, each defaulting to 5 MiB when zero. A value of -1 explicitly restores unlimited capture. The complete request remains readable by the handler and the complete response is delivered to the client; only the callback's captured data is bounded. Request close behavior and read errors are preserved.

Fix commit.

Workarounds

Disable BodyDump on exposed routes, particularly large uploads and downloads. Alternatively, enforce body-size limits before BodyDump and independently bound the responses that the application generates.

Credits

Reported by @q490107865. The patch also incorporates request-body preservation work from @jakezwang in #3105.

Affected Software

1 affected componentFixes available
go/github.com/labstack/echo/v4>=4.0.0<4.16.1
4.16.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade go/github.com/labstack/echo/v4 to a version that resolves this vulnerability.

    Fixed in 4.16.1
  2. Upgrade

    Upgrade Echo v4 to a version that resolves this vulnerability.

    Fixed in v4.16.1
  3. Configuration

    Configure request and response capture limits; in v4.16.1, MaxRequestBytes and MaxResponseBytes default to 5 MiB when set to zero.

    Echo v4 BodyDump BodyDumpConfig.MaxRequestBytes and MaxResponseBytes = 5 MiB when zero
  4. Configuration

    Disable BodyDump on exposed routes, especially routes handling large uploads or downloads.

    Echo v4 BodyDump middleware BodyDump enabled state = disabled

Event History

Oct 23, 2026
Advisory Published
via GitHub·08:48 PM
Data Sourced
via GitHub·08:48 PM
DescriptionWeaknessAffected Software

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203