CVE-2026-41492: Unauthenticated Admin Token Disclosure Leading to Authentication Bypass via /debug/vars in Dgraph

Published Apr 24, 2026
·
Updated

Summary Dgraph v25.3.2 still exposes the process command line through the unauthenticated /debug/vars endpoint on Alpha. Because the admin token is commonly supplied via the --security "token=..." startup flag, an unauthenticated attacker can retrieve that token and replay it in the X-Dgraph-AuthToken header to access admin-only endpoints.

This is a variant of the previously fixed /debug/pprof/cmdline issue, but the current fix is incomplete because it blocks only /debug/pprof/cmdline and still serves http.DefaultServeMux, which includes expvar's /debug/vars handler.

Details Alpha still exposes Go's default HTTP mux:

- x/metrics.go - imports expvar - initializes Conf = expvar.NewMap("dgraphconfig") - Go's expvar package automatically registers /debug/vars - expvar publishes: - cmdline = os.Args - memstats = runtime.Memstats

Alpha's HTTP handler explicitly blocks only the old CVE path:

- dgraph/cmd/alpha/run.go - checks if r.URL.Path == "/debug/pprof/cmdline" and returns 404 - otherwise falls through to http.DefaultServeMux.ServeHTTP(w, r)

Admin endpoints still trust the leaked token:

- dgraph/cmd/alpha/admin.go - reads X-Dgraph-AuthToken - compares it to worker.Config.AuthToken PoC 1. Send an unauthenticated request to Alpha:

http GET /debug/vars HTTP/1.1 Host: target:8080

2. Parse the JSON response and read the cmdline field.

3. Extract the admin token from the startup arguments, for example:

text --security token=debug-vars-secret;

4. Replay the token to an admin-only endpoint:

http GET /admin/config/cachemb HTTP/1.1 Host: target:8080 X-Dgraph-AuthToken: debug-vars-secret

5. The request is accepted as an authorized admin request.

This was reproduced against dgraph/dgraph:v25.3.2 in Docker.

Observed behavior:

- unauthenticated /debug/vars leaked the configured token - replaying the leaked token in X-Dgraph-AuthToken successfully accessed /admin/config/cachemb - response body was:

text 4096

It was verified that the old CVE path appears specifically patched in the same version:

- /debug/pprof/cmdline returned 404 Not Found - /debug/pprof/ remained reachable

Impact Unauthenticated attackers can obtain the Alpha admin token and gain unauthorized administrative access.

This enables privileged admin operations such as:

- reading privileged admin configuration - mutating admin configuration - performing operational control actions gated by X-Dgraph-AuthToken

In deployments where the Alpha HTTP port is reachable by untrusted parties, this is a practical authentication bypass to admin functionality.

Other sources

Dgraph is an open source distributed GraphQL database. Prior to 25.3.3, Dgraphl exposes the process command line through the unauthenticated /debug/vars endpoint on Alpha. Because the admin token is commonly supplied via the --security "token=..." startup flag, an unauthenticated attacker can retrieve that token and replay it in the X-Dgraph-AuthToken header to access admin-only endpoints. This is a variant of the previously fixed /debug/pprof/cmdline issue, but the current fix is incomplete because it blocks only /debug/pprof/cmdline and still serves http.DefaultServeMux, which includes expvar's /debug/vars handler. This vulnerability is fixed in 25.3.3.

MITRE

Affected Software

4 affected componentsFixes available
go/github.com/dgraph-io/dgraph<=1.2.8
go/github.com/dgraph-io/dgraph/v24<=24.1.8
go/github.com/dgraph-io/dgraph/v25<25.3.3
25.3.3
Dgraph Dgraph Go<25.3.3

Event History

Apr 24, 2026
Advisory Published
via GitHub·04:15 PM
Data Sourced
via GitHub·04:15 PM
DescriptionSeverityWeaknessAffected Software
CVE Published
via MITRE·06:29 PM
Data Sourced
via MITRE·06:29 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·07:17 PM
DescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-41492?

CVE-2026-41492 is considered a high severity vulnerability due to the exposure of sensitive information through an unauthenticated endpoint.

2

How do I fix CVE-2026-41492?

To fix CVE-2026-41492, upgrade Dgraph to version 25.3.3 or later.

3

What systems are affected by CVE-2026-41492?

CVE-2026-41492 affects Dgraph versions up to and including 25.3.2, as well as versions up to 1.2.8 and 24.1.8.

4

What exposure risk does CVE-2026-41492 present?

CVE-2026-41492 allows unauthenticated attackers to access sensitive command-line tokens, which can lead to unauthorized access.

5

Is authentication required to exploit CVE-2026-41492?

No, CVE-2026-41492 can be exploited without authentication since it involves an unauthenticated endpoint.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203