<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 06 Oct 2026 05:03:23 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-327418</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-327418</link>
      <description>EUVD-2026-327418</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-327418</guid>
    </item>
    <item>
      <title>fkie_cve-2026-53523</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-53523</link>
      <description>&lt;p&gt;Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&amp;amp;M tool. From version 1.0.0 to before version 2.2.0, the getRedirectURL function in oauth2.go:22-29 constructs the OAuth2 callback URL by concatenating the request&amp;#39;s Host header with a fixed path, with zero validation of the Host header. This can result in host header injection. This issue has been patched in version 2.2.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&amp;amp;M tool. From version 1.0.0 to before version 2.2.0, the getRedirectURL function in oauth2.go:22-29 constructs the OAuth2 callback URL by concatenating the request&amp;#39;s Host header with a fixed path, with zero validation of the Host header. This can result in host header injection. This issue has been patched in version 2.2.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-53523</guid>
    </item>
    <item>
      <title>GHSA-9rc6-8cjv-rcvx — Nezha Monitoring: OAuth2 Redirect URL — Host Header Injection</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-9rc6-8cjv-rcvx</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/nezhahq/nezha&lt;/p&gt;
&lt;p&gt;## 1. Description&lt;/p&gt;
&lt;p&gt;The `getRedirectURL` function in `oauth2.go:22-29` constructs the OAuth2 callback URL by concatenating the request&amp;#39;s `Host` header with a fixed path, with **zero validation** of the Host header:&lt;/p&gt;
&lt;p&gt;```go
func getRedirectURL(c *gin.Context) string {
    scheme := &amp;#34;http://&amp;#34;
    referer := c.Request.Referer()
    if forwardedProto := c.Request.Header.Get(&amp;#34;X-Forwarded-Proto&amp;#34;); forwardedProto == &amp;#34;https&amp;#34; || strings.HasPrefix(referer, &amp;#34;https://&amp;#34;) {
        scheme = &amp;#34;https://&amp;#34;
    }
    return scheme + c.Request.Host + &amp;#34;/api/v1/oauth2/callback&amp;#34;
}
```&lt;/p&gt;
&lt;p&gt;**File:** `cmd/dashboard/controller/oauth2.go:22-29`&lt;/p&gt;
&lt;p&gt;This function is called from `oauth2redirect()` at line 53:
```go
func oauth2redirect(c *gin.Context) (*model.Oauth2LoginResponse, error) {
    // ...
    redirectURL := getRedirectURL(c)
    o2conf := o2confRaw.Setup(redirectURL)
    // ...
    url := o2conf.AuthCodeURL(state, oauth2.AccessTypeOnline)
    return &amp;amp;model.Oauth2LoginResponse{Redirect: url}, nil
}
```&lt;/p&gt;
&lt;p&gt;The `redirectURL` is passed into `o2confRaw.Setup(redirectURL)` which configures the OAuth2 `Config.RedirectURL` field (`oauth2config.go:22-33`). This `RedirectURL` is sent to the OAuth2 provider (e.g., GitHub, Google, Microsoft) as the callback endpoint. The OAuth2 provider will redirect the user&amp;#39;s browser — along with the authorization code — to this URL after the user authenticates.&lt;/p&gt;
&lt;p&gt;The security issue is that `c.Request.Host` is directly user-controllable via the HTTP `Host` header. An attacker who c…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/nezhahq/nezha&lt;/p&gt;
&lt;p&gt;## 1. Description&lt;/p&gt;
&lt;p&gt;The `getRedirectURL` function in `oauth2.go:22-29` constructs the OAuth2 callback URL by concatenating the request&amp;#39;s `Host` header with a fixed path, with **zero validation** of the Host header:&lt;/p&gt;
&lt;p&gt;```go
func getRedirectURL(c *gin.Context) string {
    scheme := &amp;#34;http://&amp;#34;
    referer := c.Request.Referer()
    if forwardedProto := c.Request.Header.Get(&amp;#34;X-Forwarded-Proto&amp;#34;); forwardedProto == &amp;#34;https&amp;#34; || strings.HasPrefix(referer, &amp;#34;https://&amp;#34;) {
        scheme = &amp;#34;https://&amp;#34;
    }
    return scheme + c.Request.Host + &amp;#34;/api/v1/oauth2/callback&amp;#34;
}
```&lt;/p&gt;
&lt;p&gt;**File:** `cmd/dashboard/controller/oauth2.go:22-29`&lt;/p&gt;
&lt;p&gt;This function is called from `oauth2redirect()` at line 53:
```go
func oauth2redirect(c *gin.Context) (*model.Oauth2LoginResponse, error) {
    // ...
    redirectURL := getRedirectURL(c)
    o2conf := o2confRaw.Setup(redirectURL)
    // ...
    url := o2conf.AuthCodeURL(state, oauth2.AccessTypeOnline)
    return &amp;amp;model.Oauth2LoginResponse{Redirect: url}, nil
}
```&lt;/p&gt;
&lt;p&gt;The `redirectURL` is passed into `o2confRaw.Setup(redirectURL)` which configures the OAuth2 `Config.RedirectURL` field (`oauth2config.go:22-33`). This `RedirectURL` is sent to the OAuth2 provider (e.g., GitHub, Google, Microsoft) as the callback endpoint. The OAuth2 provider will redirect the user&amp;#39;s browser — along with the authorization code — to this URL after the user authenticates.&lt;/p&gt;
&lt;p&gt;The security issue is that `c.Request.Host` is directly user-controllable via the HTTP `Host` header. An attacker who c…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-9rc6-8cjv-rcvx</guid>
    </item>
  </channel>
</rss>
