CVE-2026-44883 PUBLISHED

Portainer: JWT accepted in URL query leaks tokens to logs and referers

Assigner: GitHub_M
Reserved: 07.05.2026 Published: 28.05.2026 Updated: 28.05.2026

Portainer Community Edition is a lightweight service delivery platform for containerized applications that can be used to manage Docker, Swarm, Kubernetes and ACI environments. From 2.33.0 to before 2.33.8, 2.39.2, and 2.41.0, Portainer's authentication middleware accepts JWT bearer tokens passed as the ?token=<JWT> URL query parameter on any authenticated API endpoint, in addition to the standard Authorization: Bearer header. URLs are recorded in reverse-proxy access logs, browser history, and HTTP Referer headers on outbound navigation, so any JWT passed this way can be harvested by anyone with access to those logs or by an external site the user subsequently visits. A leaked token grants the full privileges of the user it was issued to, until the token expires (default 8 hours, configurable). The ?token= parameter was used by Portainer's browser-based container attach, exec, and pod shell features, so any user with exec or attach rights on a container was exposed — not only administrators. This vulnerability is fixed in 2.33.8, 2.39.2, and 2.41.0.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS Score: 7.7

Product Status

Vendor portainer
Product portainer
Versions
  • Version >= 2.33.0, < 2.33.8 is affected
  • Version >= 2.39.0, < 2.39.2 is affected
  • Version >= 2.40.0, < 2.41.0 is affected

References

Problem Types

  • CWE-598: Use of GET Request Method With Sensitive Query Strings CWE