OpenTofu potential leaking of secret variable values when using static evaluation in v1.8
Impact
Users who have opted into static evaluation of module sources, versions, and backend configurations may be at risk of exposing sensitive variables and locals. This is a workflow that should not be possible and explicitly show errors.
Workarounds
Check that you are not using sensitive variables in module sources and versions, as well as backend configurations. The patch will add explicit errors and prevent this from being possible.
Examples
```hcl
variable "backend_path" {
type = string
sensitive = true
}
terraform {
backend "local" {
path = var.backend_path
}
}
`
```hcl
variable "mod_info" {
type = string
sensitive = true
}
module "foo" {
source = var.mod_info
//version = var.mod_info
}
`
Affected versions
| Package | Affected | Fixed in |
|---|---|---|
| github.com/opentofu/opentofu Go | >= 1.8.0, < 1.8.3 | 1.8.3 |
Details and references
- CVSS 3.1
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N
- Severity from
- GitHub (reviewed advisory)
- Weakness
- CWE-200
- Also known as
- CVE-2024-58375, GO-2024-3182