Every CVE Search/ Get API key

CVE-2025-71425

Contrast before 1.8.1 Information Disclosure via Logging

8.5 HighFix available

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Attack profile

How easy it is to exploit

Attack vector
Adjacent network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
None

Exploit likelihood

0.19%Unchanged since Sep 27, 2026
90%50%10%1%

What each source reports

CVE List Score used 8.5

Contrast before 1.8.1 Information Disclosure via Logging

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Record
CVE-2025-71425
CVSS 4.0
8.5 HighCVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
7.3 HighCVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-532
Updated
2026-11-02
EUVDEUVD-2025-211007 8.5

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Record
EUVD-2025-211007
CVSS 4.0
8.5 HighCVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-7f88-pr8w-xgw6 8.5

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to...

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Record
GHSA-7f88-pr8w-xgw6
CVSS 4.0
8.5 HighCVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
7.3 HighCVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-532
Updated
2026-11-02
GitHub AdvisoriesGHSA-h5f8-crrq-4pw8 7.3

Contrast workload secrets leak to logs on INFO level

Impact

When the Contrast initializer is configured with a CONTRAST_LOG_LEVEL of info or debug, the workload secret is logged to stderr and written to Kubernetes logs.

Since info is the default setting, this affects all Contrast installations that don't customize their initializers' log level.

The following audiences are intended to have access to workload secrets (see https://docs.edgeless.systems/contrast/1.7/architecture/secrets#workload-secrets):

  • Contrast Coordinator (can derive all workload secrets)
  • Contrast Initializer (obtains only the secret configured in the manifest)
  • Seedshare owner (can derive all workload secrets)
  • Workload owner (can update manifests to obtain secrets)

This vulnerability allows the following parties unintended access to workload secrets issued by a Coordinator:

  • Kubernetes users with get or list permission on pods/logs.
  • Others with read access to the Kubernetes log storage (most notably, the cloud provider).

This vulnerability does not affect scenarios where workload secrets are not used by the application (directly or with secure persistence). Applications designed for workload owner exclusion can't use workload secrets and are thus unaffected.

Patches

N/A

Workarounds

This vulnerability can be mitigated by adding an environment variable CONTRAST_LOG_LEVEL=warn to the initializer after running contrast generate, and then running contrast generate again.

References

N/A

Record
GHSA-h5f8-crrq-4pw8
CVSS 3.1
7.3 HighCVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-532
Updated
2026-11-02
NVD 8.5

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Record
CVE-2025-71425
CVSS 4.0
8.5 HighCVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
7.3 HighCVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-532
Updated
2026-11-02
OSV 8.5

Contrast before 1.8.1 Information Disclosure via Logging

Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.

Record
CVE-2025-71425
CVSS 4.0
8.5 HighCVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-532
Updated
2026-11-02
OSVGHSA-h5f8-crrq-4pw8 7.3

Contrast workload secrets leak to logs on INFO level

Impact

When the Contrast initializer is configured with a CONTRAST_LOG_LEVEL of info or debug, the workload secret is logged to stderr and written to Kubernetes logs.

Since info is the default setting, this affects all Contrast installations that don't customize their initializers' log level.

The following audiences are intended to have access to workload secrets (see https://docs.edgeless.systems/contrast/1.7/architecture/secrets#workload-secrets):

  • Contrast Coordinator (can derive all workload secrets)
  • Contrast Initializer (obtains only the secret configured in the manifest)
  • Seedshare owner (can derive all workload secrets)
  • Workload owner (can update manifests to obtain secrets)

This vulnerability allows the following parties unintended access to workload secrets issued by a Coordinator:

  • Kubernetes users with get or list permission on pods/logs.
  • Others with read access to the Kubernetes log storage (most notably, the cloud provider).

This vulnerability does not affect scenarios where workload secrets are not used by the application (directly or with secure persistence). Applications designed for workload owner exclusion can't use workload secrets and are thus unaffected.

Patches

N/A

Workarounds

This vulnerability can be mitigated by adding an environment variable CONTRAST_LOG_LEVEL=warn to the initializer after running contrast generate, and then running contrast generate again.

References

N/A

Record
GHSA-h5f8-crrq-4pw8
CVSS 3.1
7.3 HighCVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-532
Updated
2026-11-02
OSVGO-2025-3718 No score

Contrast workload secrets leak to logs on INFO level in github.com/edgelesssys/contrast

Contrast workload secrets leak to logs on INFO level in github.com/edgelesssys/contrast

Record
GO-2025-3718
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
github.com/edgelesssys/contrast
Go
through 1.8.0
1.8.1
github.com/edgelesssys/contrast
Go
before 1.8.1
1.8.1

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2025-71425 is a high vulnerability (CVSS 8.5) in Edgelesssys Contrast, published May 28, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.19%, the 8th percentile. Fixed in github.com/edgelesssys/contrast 1.8.1.

References

MoveEnter Open