Skip to main content

Glance CVE-2026-63770

| EUVDEUVD-2026-46071 HIGH
Use of Less Trusted Source (CWE-348)
2026-07-20 disclosure@vulncheck.com GHSA-jmgq-484h-mrfw
8.2
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Discover proxied Glance login endpoint
  2. Delivery
    Send login guess with unique X-Forwarded-For IP
  3. Exploit
    Per-IP lockout counter never reaches threshold
  4. Execution
    Repeat guesses at unlimited rate
  5. Impact
    Recover valid credentials and authenticate

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication IP-independent access control
Exploitation Conditions

The Glance server must be running with the Server.Proxied option enabled (a non-default deployment mode intended for reverse-proxy setups); this is the concrete AT:P attack requirement. Under that condition the authentication handler reads the client-controlled leftmost X-Forwarded-For value as the source identity for its per-IP failed-login counter, so an unauthenticated remote attacker simply supplies a different arbitrary XFF leftmost value on each request to evade the lockout threshold. Limiting factors: if 'proxied' is disabled the app uses RemoteAddr and is not exploitable; and even with the bypass, gaining access still requires guessing valid credentials, so strong/unique passwords materially reduce real-world impact.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:H) scores 8.2 (High): network-reachable, low complexity, no privileges or user interaction, but with AT:P signalling a genuine attack requirement - the non-default 'proxied' option must be enabled. This AT:P condition is the single most important tempering factor: default Glance installations that do not sit behind a configured trusted proxy are not affected. There is no EPSS score, KEV listing, or POC provided, so this is not evidence of active or widespread exploitation; the risk is driven by ease of technique rather than observed attacks. The VC:H rating is somewhat optimistic in that the header spoof itself only removes rate limiting - actual confidentiality loss still depends on weak or guessable credentials - so treat this as an enabler that amplifies credential-guessing risk rather than a direct data-disclosure bug. Net: a real, easily-weaponized weakness for proxied deployments with weak passwords, but lower priority for default (non-proxied) installs.

Exploit ScenarioDerived

An attacker locates a Glance instance running in proxied mode and repeatedly POSTs login guesses to the authentication endpoint, incrementing the leftmost X-Forwarded-For value (e.g. 1.1.1.1, 1.1.1.2, ...) on each request. Each attempt registers as a distinct source IP, so the per-IP lockout never fires and the attacker can run an unbounded dictionary or credential-stuffing attack until a valid password is found. No POC was published, but the fix diff and advisory make the header-rotation technique straightforward to reproduce.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 20, 2026

Brute-force protection bypass in Glance (glanceapp/glance) 0.8.5 lets remote unauthenticated attackers defeat the per-IP failed-login lockout by rotating the leftmost value of the X-Forwarded-For header, but only when the server 'proxied' option is enabled. Because the authentication handler trusted the client-supplied leftmost XFF value instead of the trusted reverse proxy's rightmost value, each guess appears to come from a new IP and the lockout counter never trips, enabling unlimited credential guessing against the login endpoint. No public exploit identified at time of analysis and it is not in CISA KEV, though the upstream fix (PR #1033) and VulnCheck advisory make the technique trivially reproducible.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - apply the change from https://github.com/glanceapp/glance/pull/1033, which makes addressOfRequest() use the rightmost (trusted-proxy-appended) X-Forwarded-For value instead of the spoofable leftmost value, and upgrade to the first tagged release that includes this commit once published (verify against the project releases page). As an immediate compensating control on 0.8.5, disable the server 'proxied' option if the deployment does not actually require it - this reverts identity resolution to RemoteAddr and removes the spoofing surface, at the cost of losing real client IPs when Glance genuinely runs behind a proxy. Alternatively, terminate and strip/normalize the X-Forwarded-For header at the trusted reverse proxy (e.g., have nginx overwrite XFF with $remote_addr rather than appending) so downstream code cannot see client-supplied entries; the side effect is that any legitimately forwarded upstream chain is discarded. Reference the vendor advisory at https://www.vulncheck.com/advisories/glance-ip-spoofing-authentication-brute-force-protection-bypass.

Affected VersionsENISA

glance 0 ≤0.8.5

Affected Packages

euvd glance no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Glance is a self-hosted dashboard/start-page application written in Go. The flaw is a classic CWE-348 (Use of Less Trusted Source): the addressOfRequest() helper in internal/glance/glance.go returned ips[0] - the leftmost X-Forwarded-For entry - as the client identity used for rate limiting. In a standard reverse-proxy deployment the leftmost XFF value is fully attacker-controlled and only the rightmost hop (appended by the trusted proxy) is reliable. The PR #1033 diff confirms the corrected behavior: it now trims and returns the last (rightmost) IP and falls back to RemoteAddr when the header is empty or malformed. The X-Forwarded-For dependence is only active when the Server.Proxied configuration flag is true; without proxied mode Glance uses RemoteAddr and the spoofing surface does not exist.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

Network, unauthenticated, no UI; AC:H because the non-default proxied config precondition (AT:P in 4.0) has no direct 3.1 equivalent; C:H reflects credential compromise enabled by the lockout bypass, I/A none.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Glance through 0.8.5 contains an IP address spoofing vulnerability in the authentication handler that allows unauthenticated attackers to bypass brute-force lockout protections by supplying arbitrary values in the X-Forwarded-For request header when the server proxied option is enabled. Attackers can manipulate the leftmost value of the X-Forwarded-For header to make each login attempt appear to originate from a distinct IP address, preventing the per-IP failed-login counter from reaching the lockout threshold and enabling unlimited credential guessing against the authentication endpoint.

Executive ViewAI

Why It Matters

Glance 0.8.5 contains an authentication brute-force protection bypass when the 'proxied' configuration option is enabled, allowing remote attackers to defeat per-IP login rate limiting by manipulating the X-Forwarded-For header. This exposes organizations running Glance with proxied reverse proxy configurations to unauthorized account compromise through unlimited credential guessing attacks. No public exploit identified at time of analysis, though the attack technique is straightforward to reproduce; remediation is required immediately for affected deployments.

Business Impact: High
Compensating Controls

Disable the 'proxied' configuration option if operationally feasible. If the feature is required for operations, configure the reverse proxy or load balancer to override all client-supplied X-Forwarded-For headers with the actual client connection IP from the trusted proxy layer, and implement username-based rate limiting at the proxy layer to prevent per-IP spoofing bypass techniques.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Low
niche self-hosted homelab dashboard, limited enterprise production footprint
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy