Security incident · CVE-2026-114437
chi: Client IP spoofing in ClientIPFromXFF via X-Forwarded-For
Published Oct 23, 2026 · catalog updated Oct 23, 2026 · chi: Client IP spoofing
Last checked Nov 6, 2026. A connected source was read within the last 7 days.
Check if you run it
No confirmed exploitation is on record for CVE-2026-114437. EPSS is 0.13%. Act only if a listed version of chi: Client IP spoofing is installed.
Gaps on this record
- The stored product name is a package slug. The name on this page is taken from the title (chi: Client IP spoofing).
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
- Severity
- Medium4.8
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- 0.13%
- Remediation
- Version ranges on file
- Affected products
- Go github.com/go-chi/chi/v5 · go github.com/go-chi/chi/v5 · golang github.com
### Summary skips any entry in a configured trusted CIDR but never verifies that the direct TCP peer in belongs to that CIDR. A client that can reach the Go server directly can therefore append a trusted-looking proxy address and choose the client IP returned by . The attack is remote and requires one unauthenticated HTTP request with no user interaction (AV:N/AC:L/PR:N/UI:N). It changes security decisions and exposes one protected handler within the same application (S:U/C:L/I:L); no availability loss was observed (A:N). **Preconditions:** The application uses and makes the origin server reachable by an anonymous client outside the configured trusted-proxy CIDRs. No victim interaction is required. 1. Send directly to the origin with no header. 2. Observe a response and an empty derived client IP. 3. Repeat the request with . 4. Observe and . Expected: the untrusted direct peer prevents the forwarding chain from being accepted. ### Details The vulnerable code is in , lines 93-116 at the tested revision. It calls with only the attacker-controlled header, skips every entry that matches a trusted prefix, and stores the first remaining address: The function does not parse before this walk. Consequently, the configured CIDRs identify trusted strings inside , but do not establish that the immediate sender is one of those trusted proxies. ### Proof of concept Using Go 1.24 or later, create and run this minimal application against the tested revision: The no-header control was rejected: Adding the forged chain authorized the same direct client: ### Impact I made an anonymous direct connection from , supplied a header that ended in a different trusted-proxy CIDR, and caused the application to treat my client IP as the allowlisted . This changed the authorization decision from to for the protected handler.
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- Go github.com/go-chi/chi/v50 → 5.4.0
- go github.com/go-chi/chi/v5<= 5.3.2
- golang github.comversion unspecified
How to fix CVE-2026-114437
Upgrade
CVE-2026-114437 lists a fix boundary at 5.4.0. Compare the installed build with that boundary before you change production.
Version check
Affected <= 5.3.2
Advisory
Open the cve_org record and follow its fix.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
No confirmed exploitation is on record for CVE-2026-114437. EPSS is 0.13%. Act only if a listed version of chi: Client IP spoofing is installed.
Which versions are affected?
Compare what you have installed with 0 → 5.4.0, <= 5.3.2. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
CWE-345: Insufficient Verification of Data Authenticity. EPSS 0.13%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 23, 2026 · GitHub Advisory Database
Detected
### Summary skips any entry in a configured trusted CIDR but never verifies that the direct TCP peer in belongs to that CIDR. A client that can reach the Go server directly can therefore append a trusted-looking proxy address and choose the client IP returned by . The attack is remote and requires one unauthenticated HTTP request with no user interaction (AV:N/AC:L/PR:N/UI:N). It changes security
Oct 23, 2026 · GitHub Advisory Database
Fix available
github.com/go-chi/chi/v5 fixed in 5.4.0
Oct 23, 2026 · GitHub Advisory Database
Fix available
github.com/go-chi/chi/v5 fixed in 5.4.0
Oct 23, 2026 · GitHub Advisory Database
Updated
### Summary skips any entry in a configured trusted CIDR but never verifies that the direct TCP peer in belongs to that CIDR. A client that can reach the Go server directly can therefore append a trusted-looking proxy address and choose the client IP returned by . The attack is remote and requires one unauthenticated HTTP request with no user interaction (AV:N/AC:L/PR:N/UI:N). It changes security
Sources
- CVE.orgVulnerability recordCVE-2026-114437
Official CVE identifier
cve.org - FIRST EPSSExploitation probabilityCVE-2026-114437
30-day exploitation probability 0.13%
first.org - GitHub Advisory DatabasePackage advisoryGHSA-j6qf-3m9c-vwj3
GitHub Advisory Database record mirrored by OSV.
github.com - GitLab Advisory DatabasePackage advisoryCVE-2026-114437
ClientIPFromXFF skips any X-Forwarded-For entry in a configured trusted CIDR but never verifies that the direct TCP peer in http.Request.RemoteAddr belongs to that CIDR. A client that can reach the Go server directly can therefore append a trusted-looking proxy address and choose the client IP returned by middleware.GetClientIP. The attack is remote and requires one unauthenticated HTTP request wi
advisories.gitlab.com - Go Vulnerability DatabasePackage advisoryGHSA-j6qf-3m9c-vwj3
chi: Client IP spoofing in ClientIPFromXFF via X-Forwarded-For
osv.dev - OpenSSF OSV / OSV ScannerPackage advisoryGHSA-j6qf-3m9c-vwj3
chi: Client IP spoofing in ClientIPFromXFF via X-Forwarded-For
osv.dev
References
Freshness
Last verified in this catalog Nov 6, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- FIRST EPSSNov 6, 2026
- Go Vulnerability DatabaseOct 28, 2026
- GitLab Advisory DatabaseOct 27, 2026
- GitHub Advisory DatabaseOct 26, 2026
- OpenSSF OSV / OSV ScannerOct 26, 2026
- CVE.orgOct 24, 2026