Nezha through 2.2.3 Host Header Injection via OAuth2 redirect_uri
Nezha 2.2.3 contains a Host header injection regression in the OAuth2 redirect endpoint. When the new optional dashboard_host setting is empty, /api/v1/oauth2/{provider} (cmd/dashboard/controller/oauth2.go) reflects the attacker-supplied HTTP Host header into the redirect_uri sent to the identity provider instead of falling back to the configured install_host. An attacker who induces a victim to begin OAuth2 login via a request that reaches Nezha with a forged Host header can cause an attacker-controlled callback URL to be used as the redirect_uri; if the OAuth2 provider accepts it, the victim's authorization code is delivered to the attacker origin, allowing the attacker to complete the OAuth2 login/binding flow and take over the account. This regresses the fix for GHSA-9rc6-8cjv-rcvx and is configuration-dependent (dashboard_host empty). At the time of the advisory no patched version was available.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-101090
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 01:55 UTC · Revision 1
Source evidence
Nezha through 2.2.3 Host Header Injection via OAuth2 redirect_uri
core-osv · Original sourcePublished 27 Sept 2026, 20:50 UTC
Nezha 2.2.3 contains a Host header injection regression in the OAuth2 redirect endpoint. When the new optional dashboard_host setting is empty, /api/v1/oauth2/{provider} (cmd/dashboard/controller/oauth2.go) reflects the attacker-supplied HTTP Host header into the redirect_uri sent to the identity provider instead of falling back to the configured install_host. An attacker who induces a victim to begin OAuth2 login via a request that reaches Nezha with a forged Host header can cause an attacker-controlled callback URL to be used as the redirect_uri; if the OAuth2 provider accepts it, the victim's authorization code is delivered to the attacker origin, allowing the attacker to complete the OAuth2 login/binding flow and take over the account. This regresses the fix for GHSA-9rc6-8cjv-rcvx and is configuration-dependent (dashboard_host empty). At the time of the advisory no patched version was available.
osv:CVE-2026-101090
Complete source record
{
"id": "0749cacc8c3c4e37e2192f5d1387536f6455ca391de355e9a7e996ae22045331",
"url": "https://osv.dev/vulnerability/CVE-2026-101090",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Nezha through 2.2.3 Host Header Injection via OAuth2 redirect_uri",
"summary": "Nezha 2.2.3 contains a Host header injection regression in the OAuth2 redirect endpoint. When the new optional dashboard_host setting is empty, /api/v1/oauth2/{provider} (cmd/dashboard/controller/oauth2.go) reflects the attacker-supplied HTTP Host header into the redirect_uri sent to the identity provider instead of falling back to the configured install_host. An attacker who induces a victim to begin OAuth2 login via a request that reaches Nezha with a forged Host header can cause an attacker-controlled callback URL to be used as the redirect_uri; if the OAuth2 provider accepts it, the victim's authorization code is delivered to the attacker origin, allowing the attacker to complete the OAuth2 login/binding flow and take over the account. This regresses the fix for GHSA-9rc6-8cjv-rcvx and is configuration-dependent (dashboard_host empty). At the time of the advisory no patched version was available.",
"evidence": "osv:CVE-2026-101090",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2026-101090",
"aliases": [
"CVE-2026-101090",
"GHSA-rf68-8gjr-36q7",
"GO-2026-6486"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/nezhahq/nezha",
"type": "GIT",
"events": [
{
"introduced": "3d74cd9431a48fa89c6489689eac82a872799ea0"
},
{
"last_affected": "3d74cd9431a48fa89c6489689eac82a872799ea0"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "2.2.3"
},
{
"last_affected": "2.2.3"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandaloneSingleVersion"
}
]
}
}
],
"versions": [
"2.2.3",
"v2.2.3"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-101090.json"
}
}
],
"modified": "2026-10-28T02:30:32.319081485Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/101xxx/CVE-2026-101090.json",
"https://github.com/nezhahq/nezha/security/advisories/GHSA-rf68-8gjr-36q7",
"https://nvd.nist.gov/vuln/detail/CVE-2026-101090",
"https://www.vulncheck.com/advisories/nezha-through-2.2.3-host-header-injection-via-oauth2-redirect-uri"
],
"provider_metadata": {
"cwe_ids": [
"CWE-601"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/101xxx/CVE-2026-101090.json"
}
},
"related_cves": [
{
"value": "CVE-2026-101090",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 499501,
"published_at": "2026-09-27T20:50:00.857+00:00"
}