Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain read access to logs or app.log
-
ExploitInspect Gin access-log query strings
-
ExecutionRecover cleartext proxy key from Gemini-style request
-
ImpactReplay key against corresponding group
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A09:2025 - Security Logging & Alerting Failures
ASVS 5.0
V16 - Security Logging and Error Handling Log data sanitization
|
| Exploitation Conditions | Exploitation requires that GPT-Load's Gin Logger access-logging be active (default behavior) AND that the attacker has read access to one of two specific sinks: the console/stdout log stream or the on-disk file ./data/logs/app.log. The exposed secret only appears for Gemini-style requests that pass the proxy key in the URL query string, because the Gin Logger middleware records the raw query string before extractAuthKey removes the key parameter. Limiting factors: this is local/log-read access only (AV:L), so a remote unauthenticated attacker cannot reach it directly; the attacker must already be an operator, log-pipeline consumer, or host-level intruder (PR:L), and only proxy keys actually used in Gemini-style query-string requests are recoverable - keys sent via headers are not exposed. |
| Impact | This is a genuinely low-priority issue despite being a real, verified flaw. The CVSS 4.0 base vector (AV:L/AC:L/AT:N/PR:L/UI:N) scores 4.8 (Medium) and tells a consistent story: exploitation is local, requires some existing privilege (PR:L), and yields only limited confidentiality impact (VC:L) with no integrity or availability impact (VI:N/VA:N). The limiting factor is the precondition - an attacker must already have read access to the console logs or the ./data/logs/app.log file, which means they are already an authenticated operator, log-pipeline consumer, or someone who has otherwise breached the host. No EPSS score was supplied, the CVE is NOT in CISA KEV, and no public exploit code is identified in the provided references (the hackmd and VulnCheck links are vulnerability write-ups/advisories, not weaponized PoC). There is no signal conflict to reconcile: every source points the same low-risk direction. The realistic concern is privilege escalation/lateral movement - a user with log visibility but no key access can harvest proxy keys and abuse the corresponding group - rather than mass remote exploitation. Treat as a defense-in-depth / secrets-hygiene fix, not an emergency patch. |
| Exploit ScenarioDerived | An operator, SRE, or log-aggregation user who can read GPT-Load's console output or ./data/logs/app.log reviews the Gin access logs and finds Gemini-style request URLs whose raw query string still contains the client proxy key (logged before extractAuthKey strips it). They copy a leaked key and replay requests against the matching group to consume quota or access upstream LLM APIs as that client. No public exploit code is identified at time of analysis; exploitation is trivial manual log inspection requiring local/log read access (AV:L, AC:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 11, 2026
Cleartext logging in GPT-Load through 1.4.11 exposes client proxy keys for Gemini-style requests, because the Gin Logger middleware records the raw query string before extractAuthKey strips the key parameter. Anyone able to read the console/stdout stream or the on-disk ./data/logs/app.log - an operator, a log-pipeline consumer, or a host-level intruder with low-privileged local access (PR:L) - can recover those keys and replay them against the corresponding group. The assessed impact is confidentiality-only and low (CVSS 4.8; assessed CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N), exploitation requires default access logging to be active and keys to be sent in the query string rather than headers, and no public exploit identified at time of analysis.
RemediationAI
No vendor-released patch has been identified at time of analysis for CVE-2026-108754, so operators must rely on compensating controls. The most direct response is to rotate every proxy key that could have appeared in a logged Gemini-style query string, since any value already written to ./data/logs/app.log or shipped to a log platform must be treated as compromised, and to keep rotating on a schedule. Second, migrate clients to send credentials in the Authorization header instead of the ?key= query parameter, which removes the secret from the logged query string entirely - the trade-off is that any client hard-coded to the Gemini query-string convention must be reconfigured. Third, replace or wrap the Gin Logger so that only the path is logged (query string stripped or the key parameter masked) before extractAuthKey runs, or disable the access logger where it is not required; the trade-off is reduced request-level observability, which can slow incident triage. Fourth, treat ./data/logs/app.log and console/stdout captures as secret-bearing artifacts: restrict file permissions to the service account, exclude them from broad log-shipping pipelines or apply a regex-based redaction filter before forwarding, and limit who can read the console stream - these reduce, but do not eliminate, exposure from copies already collected. Finally, monitor log sinks for key patterns and alert on unexpected reuse of a Gemini-style key against its group so that any key leaking despite the above is detected quickly. References: https://www.vulncheck.com/advisories/gpt-load-through-1.4.11-cleartext-proxy-key-logging-via-access-logger and https://hackmd.io/@haind03/tbphp-gpt-load-proxy-key-access-log-disclosure.
Affected VersionsENISA
Affected Packages
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
GPT-Load is a Go-based proxy/aggregator for OpenAI- and Gemini-compatible API endpoints that uses the Gin web framework for HTTP routing. As shown in the referenced source, internal/middleware/middleware.go lines 20-74, the Gin Logger middleware emits a structured access-log line at request completion and serializes fields such as the request path together with the raw query string; credential extraction for Gemini-style traffic happens later in extractAuthKey (same file, lines 247-254), which strips the key query parameter from the request. Because logging already captured the unredacted URL, the secret survives into the log record, the classic CWE-532 (Insertion of Sensitive Information into Log File) pattern in which sensitive material is written to a persistence/observability sink whose readership is normally broader than the original request context. The CPE cpe:2.3:a:tbphp:gpt-load:* indicates all shipped releases are in scope, with the flaw reported through version 1.4.11. Exposure is conditional: only credentials passed in the URL query string (the Gemini convention, e.g. ?key=...) are recorded, while keys supplied via the Authorization header never enter the logged query string and are therefore not disclosed. Gin's default logger and the underlying Go logging surface provide no secret redaction, so this is a design/logging-configuration weakness rather than a memory-safety or injection bug, with the assessed effect limited to low confidentiality impact and no integrity or availability impact.
Know when Gpt Load gets its next vulnerability
- 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
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Requires existing read access to local log output (AV:L, PR:L), no interaction or complexity barrier (AC:L/UI:N), and only limited confidentiality impact (C:L) with no integrity/availability effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
GPT-Load through 1.4.11 contains a cleartext logging vulnerability that exposes client proxy keys because the Gin Logger middleware records the raw query string before extractAuthKey strips the key parameter. Attackers with read access to console logs or ./data/logs/app.log can recover proxy keys from Gemini-style requests and use them against the corresponding group.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-96919
GHSA-cg67-pj93-c6m6
NVD
CVE.org
EPSS
Exploit-DB