GHSA-rxrh-4j9h-xgg9MediumCVSS 4.7

Steeltoe: TLS private keys written to /tmp with default permissions, never deleted

Published
July 2, 2026
Last Modified
July 2, 2026

🔗 CVE IDs covered (1)

📋 Description

Summary

When MySQL or PostgreSQL service bindings from VCAP_SERVICES include TLS client credentials, the Connectors library writes those credentials to temporary files in Path.GetTempPath() using File.CreateText. On Linux, File.CreateText creates files with mode 0644 (world-readable) under the process umask, and the files are never deleted. The same key material is protected at mode 0400 in /proc/<pid>/environ.

Impact

Any process co-located in the container that runs as a different UID can read the TLS client private key from /tmp and use it to impersonate the application when connecting to the backing database over mutual TLS.

Affected configuration

  • Application is deployed on Cloud Foundry or another environment that populates VCAP_SERVICES with a MySQL or PostgreSQL service binding that includes sslKey credentials.
  • A process running as a different UID shares the container's filesystem.

Mitigations

If an immediate upgrade is not possible, prevent other processes from running in the container under a different UID with access to /tmp.

🎯 Affected products1

  • nuget/Steeltoe.Configuration.Abstractions:>= 4.0.0, <= 4.1.0

🔗 References (4)