CVE-2026-27900
vulnerability analysis and mitigation

Overview

CVE-2026-27900 is a sensitive information exposure vulnerability (CWE-532) in the Terraform Provider for Linode, where debug logs recorded plaintext credentials and other sensitive data without redaction. All versions prior to v3.9.0 are affected, including all v1.x and v2.x releases. The vulnerability was reported by Hasan Sheet via Akamai's HackerOne Bug Bounty program, disclosed on February 24, 2026, and published to the GitHub Advisory Database and NVD on February 26, 2026. The CVSS v3.1 base score is 5.0 (Moderate) per the GitHub advisory, though NVD assigns 7.7 (High) (Github Advisory, Linode Security Advisory).

Technical details

The root cause is CWE-532 (Insertion of Sensitive Information into Log File): multiple provider operations logged entire Go structs to debug output without filtering sensitive fields. Specifically, instance creation logged InstanceCreateOptions (containing RootPass and StackScriptData), disk creation logged InstanceDiskCreateOptions (containing RootPass and StackscriptData), StackScript updates logged the full script content, image share group member creation logged tokens in ImageShareGroupAddMemberOptions.Token, object storage operations logged full PutObjectInput structures, and NodeBalancer config operations logged SSLKey (TLS private keys). The vulnerability is only triggered when debug logging is explicitly enabled via the TF_LOG or TF_LOG_PROVIDER environment variables set to DEBUG or INFO levels — it is not active in default configurations. The fix (commit 43a925d) replaced full-struct log entries with explicit, non-sensitive field logging across six source files (Linode Security Advisory, Security Fix Commit).

Impact

An authenticated user with access to provider debug logs — through CI/CD pipeline artifacts, log aggregation systems, or direct debug output — could extract root passwords, image share group tokens, TLS private keys used in NodeBalancer configurations, StackScript content (including embedded secrets), and object storage data. There is no integrity or availability impact; the risk is entirely confidentiality-focused. Extracted credentials could enable unauthorized access to Linode cloud resources, lateral movement within the infrastructure, or persistent access if credentials are not rotated (Github Advisory, Linode Security Advisory).

Exploitability

There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation at this time. The EPSS score is approximately 0.014% (3rd percentile), indicating a very low probability of near-term exploitation. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires an attacker to already have authenticated access to environments where debug logs are stored or streamed, significantly limiting the attack surface (Github Advisory).

Exploitation steps

  1. Identify target environment: Determine whether the target organization uses the Terraform Provider for Linode (versions < 3.9.0) with debug logging enabled (i.e., TF_LOG or TF_LOG_PROVIDER set to DEBUG or INFO).
  2. Gain access to logs: Obtain authenticated access to log storage — this could be a CI/CD pipeline (e.g., GitHub Actions, GitLab CI, Jenkins) where Terraform runs with debug logging, a centralized log aggregation system (e.g., Splunk, ELK, Datadog), or local debug output files.
  3. Search for sensitive log entries: Query or grep logs for patterns such as client.CreateInstance(...), client.CreateInstanceDisk(...), client.UpdateStackscript(...), client.ImageShareGroupAddMember(...), putting the object, client.CreateNodeBalancerConfig(...), or client.UpdateNodeBalancerConfig(...) — these were the debug log messages that included full option structs.
  4. Extract credentials: Parse the logged Go struct output to retrieve plaintext values for RootPass, StackScriptData, Token, SSLKey, or object storage content.
  5. Use extracted credentials: Leverage the obtained credentials to authenticate to Linode instances, access NodeBalancer TLS configurations, or interact with object storage, enabling further unauthorized access or lateral movement (Linode Security Advisory, Security Fix Commit).

Indicators of compromise

  • Logs: Presence of log entries containing client.CreateInstance(...), client.CreateInstanceDisk(...), client.UpdateStackscript(...), client.ImageShareGroupAddMember(...), putting the object, client.CreateNodeBalancerConfig(...), or client.UpdateNodeBalancerConfig(...) with full struct dumps (including fields like RootPass, SSLKey, Token, or Script) in Terraform provider debug logs.
  • Environment: TF_LOG or TF_LOG_PROVIDER environment variables set to DEBUG or INFO in CI/CD pipeline configurations or Terraform execution environments running provider versions < 3.9.0.
  • CI/CD Artifacts: Terraform debug log artifacts stored in CI/CD job outputs (e.g., GitHub Actions logs, GitLab CI job traces) from runs using the affected provider version.
  • Log Aggregation: Forwarded Terraform provider logs in SIEM or log aggregation systems containing unredacted credential fields from the affected operations (Linode Security Advisory).

Mitigation and workarounds

Upgrade the Terraform Provider for Linode to v3.9.0 or later, which sanitizes debug logs to include only non-sensitive metadata (labels, regions, resource IDs) while redacting credentials, tokens, keys, scripts, and other sensitive content (v3.9.0 Release). If immediate upgrade is not possible, disable debug logging by unsetting TF_LOG_PROVIDER and TF_LOG, or set them to WARN or ERROR level. Additionally: restrict access to existing and historical debug logs; purge or apply retention policies to logs that may contain sensitive values; and rotate all potentially exposed credentials including root passwords, image share group tokens, NodeBalancer TLS private keys/certificates, and any secrets embedded in StackScript content (Github Advisory).

Community reactions

The vulnerability was disclosed via Akamai's HackerOne Bug Bounty program and published as a GitHub Security Advisory (GHSA-5rc7-2jj6-mp64). It was also reported to the oss-security mailing list on February 26, 2026 (oss-security). Red Hat acknowledged the CVE in their security tracking. Community reaction has been limited given the moderate severity and the requirement for debug logging to be explicitly enabled; no significant social media controversy or major media coverage has been identified.

Additional resources


SourceThis report was generated using AI

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management