github.com/labstack/echo/v4
High performance, minimalist Go web framework
Activity
- Latest release
- 6d ago
- Total releases
- 23
- Cadence
- ~43 days
- Last 12 months
- 9
Reach
- Stars
- 32.8k
Details
- First release
- Dec 27, 2022
| Version | Released | |
|---|---|---|
v4.16.2
patch
2 CVEs
CVE-2026-118653
GHSA-246p-cpwv-v3jq
Oct 28, 2026
Echo has Rate Limiter Bypass via Spoofed X-Forwarded-For Header in Default Configuration
5.3
/ 10
Medium
Network
Low
None
None
Unchanged
None
Low
None
SummaryWhen Affected Component
Description
|
v4.16.2
patch
Dependencies (6)
|
|
v4.16.1
patch
2 CVEs
CVE-2026-118653
GHSA-246p-cpwv-v3jq
Oct 28, 2026
Echo has Rate Limiter Bypass via Spoofed X-Forwarded-For Header in Default Configuration
5.3
/ 10
Medium
Network
Low
None
None
Unchanged
None
Low
None
SummaryWhen Affected Component
Description
|
v4.16.1
patch
Dependencies (6)
|
|
v4.16.0
minor
6 CVEs
CVE-2026-118653
GHSA-246p-cpwv-v3jq
Oct 28, 2026
Echo has Rate Limiter Bypass via Spoofed X-Forwarded-For Header in Default Configuration
5.3
/ 10
Medium
Network
Low
None
None
Unchanged
None
Low
None
SummaryWhen Affected Component
Description
|
v4.16.0
minor
Dependencies (6)
|
|
v4.15.4
patch
12 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.15.4
patch
Dependencies (6)
|
|
v4.15.3
patch
12 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.15.3
patch
Dependencies (6)
|
|
v4.15.2
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.15.2
patch
Dependencies (6)
|
|
v4.15.1
patch
15 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.15.1
patch
Dependencies (6)
|
|
v4.15.0
minor
15 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.15.0
minor
Dependencies (6)
|
|
v4.14.0
minor
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.14.0
minor
Dependencies (6)
|
|
v4.13.4
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.13.4
patch
Dependencies (6)
|
|
v4.13.3
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.13.3
patch
Dependencies (6)
|
|
v4.13.2
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.13.2
patch
Dependencies (6)
|
|
v4.13.1
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.13.1
patch
Dependencies (6)
|
|
v4.13.0
minor
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.13.0
minor
Dependencies (6)
|
|
v4.12.0
minor
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.12.0
minor
Dependencies (7)
|
|
v4.11.4
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.11.4
patch
Dependencies (7)
|
|
v4.11.3
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.11.3
patch
Dependencies (7)
|
|
v4.11.2
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.11.2
patch
Dependencies (7)
|
|
v4.11.1
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.11.1
patch
Dependencies (7)
|
|
v4.11.0
minor
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.11.0
minor
Dependencies (7)
|
|
v4.10.2
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.10.2
patch
Dependencies (7)
|
|
v4.10.1
patch
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.10.1
patch
Dependencies (7)
|
|
v4.10.0
initial
14 CVEs
CVE-2026-118657
GHSA-2ffq-g2xg-c22p
Oct 28, 2026
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
5.9
/ 10
Medium
Network
High
None
Required
Unchanged
High
Low
None
Description
The trusted headers (checked in this order of precedence):
Threat modelScenario A — Directly exposed application (vulnerable by default):
The Echo application listens on HTTP and is reachable directly by clients (no L7 proxy in front), or an attacker can bypass the proxy and reach the backend directly. In this case, the attacker has full control over all request headers. Sending This is the primary scenario. The application is vulnerable by default with no misconfiguration required — simply using Scenario B — Behind L7 proxy with header sanitization (reduced risk):
If the application is strictly behind a correctly configured L7 proxy that always overwrites Root cause
Two additional issues with this implementation:
Affected components| Component | File | Line(s) | Impact |
|-----------|------|---------|--------|
| This is an unsafe-by-default API surface, not just misconfigurationThis behavior is not accidental — it is codified in the project's own test suite. For example,
Similarly, The problem is not that the framework can use forwarded headers — that is legitimate behind a trusted proxy. The problem is that there is no mechanism to control whether this trust is appropriate, unlike the existing IP header trust model. Inconsistency with existing trust modelEcho already recognizes this class of header-trust vulnerability for IP addresses. The
No equivalent mechanism exists for scheme detection. Note on proxies and the "3 additional headers"A correctly configured nginx The three additional headers become real attack vectors specifically when:
In such cases, an attacker can bypass via any of the four headers. The main vulnerability (HTTPS redirect bypass via ImpactHTTPS downgrade / MITM: An attacker who can reach the Echo HTTP endpoint directly can prevent HTTPS redirection, keeping client traffic on plaintext HTTP and enabling man-in-the-middle attacks. HSTS suppression: Behind a TLS-terminating proxy, spoofing URL construction with arbitrary scheme: Proof of ConceptTested on Echo v5.0.4 (commit PoC 1: HTTPS Redirect Bypass (Go test)
PoC 2: curl examples (easiest to reproduce)Start a minimal Echo server:
Then:
PoC 3: Arbitrary scheme in redirect URL (WWWRedirect)
PoC 4: HSTS Suppression
Test output (all attacks succeed)
Precedent CVEs
Suggested fixOption A:
|
v4.10.0
initial
Dependencies (7)
|