<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-28T18:37:05.442660+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2026-25680</id>
    <title>CVE-2026-25680 — Invoking denial of service when parsing arbitrary HTML in golang.org/x/net/html</title>
    <updated>2026-09-28T18:37:05.492961+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> golang.org/x/net/html</p>
<p>Parsing arbitrary HTML can consume excessive CPU time, possibly leading to denial of service.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2026-25680"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-3fxj-6jh8-hvhx</id>
    <title>GHSA-3fxj-6jh8-hvhx — chi Has an IP Spoofing Vulnerability in `middleware.RealIP`</title>
    <updated>2026-09-28T18:37:05.493067+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Go: github.com/go-chi/chi/v5/middleware</p>
<p>## Summary
The `RealIP` middleware in `go-chi/chi` is vulnerable to IP spoofing because it blindly trusts the first (leftmost) element of the `X-Forwarded-For` HTTP header. This allows a remote attacker to bypass IP-based access control lists (ACLs) and rate-limiting mechanisms by providing a spoofed IP address in the header.</p>
<p>## Details
In `middleware/realip.go`, the `realIP` function parses the `X-Forwarded-For` header and extracts the first comma-separated value:</p>
<p>```go
func realIP(r *http.Request) string {
    // ...
    } else if xff := r.Header.Get(xForwardedFor); xff != "" {
        ip, _, _ = strings.Cut(xff, ",")
    }
    // ...
}
```</p>
<p>Standard practice for `X-Forwarded-For` is that each proxy appends the client's IP to the end of the list. However, since the client can also provide this header, the leftmost values are untrusted. A client can send a header like `X-Forwarded-For: &lt;spoofed_ip&gt;, &lt;actual_proxy_ip&gt;`, and `go-chi/chi` will treat `&lt;spoofed_ip&gt;` as the source of the request.</p>
<p>## Proof of Concept (PoC)
The following code demonstrates how an attacker can bypass an IP-based restriction.</p>
<p>```go
package main</p>
<p>import (
        "fmt"
        "net/http"
        "net/http/httptest"</p>
<p>"github.com/go-chi/chi/v5"
        "github.com/go-chi/chi/v5/middleware"
)</p>
<p>func main() {
        r := chi.NewRouter()</p>
<p>// Enable the vulnerable RealIP middleware
        r.Use(middleware.RealIP)</p>
<p>// An endpoint that should be restricted to a specific administrat…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-3fxj-6jh8-hvhx"/>
  </entry>
</feed>
