{"id":"CVE-2024-58375","aliases":["EUVD-2024-55722","GHSA-p8hv-x2cr-398f","GHSA-wpr2-j6gr-pjw9","GO-2024-3182"],"status":"published","title":"OpenTofu before 1.8.3 Secret Variable Leaking via Static Evaluation","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","severity":{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00432,"percentile":0.37793,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-200","CWE-497"],"published":"2024-10-03T16:51:50Z","modified":"2026-10-28T02:30:50Z","fixes":[{"ecosystem":"Go","package":"github.com/opentofu/opentofu","fixed_in":["1.8.3"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/opentofu/opentofu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.8.0"},{"fixed":"1.8.3"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/opentofu/opentofu","ranges":[{"type":"SEMVER","events":[{"introduced":"1.8.0"},{"fixed":"1.8.3"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/opentofu/opentofu","ranges":[{"type":"SEMVER","events":[{"introduced":"1.8.0"},{"fixed":"1.8.3"}]}]}],"products":[{"vendor":"open source","product":"opentofu"},{"vendor":"opentofu","product":"opentofu"}],"references":[{"url":"https://github.com/opentofu/opentofu/security/advisories/GHSA-wpr2-j6gr-pjw9","tags":["vendor-advisory","advisory","web"]},{"url":"https://www.vulncheck.com/advisories/opentofu-before-secret-variable-leaking-via-static-evaluation","tags":["third-party-advisory","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-58375","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-p8hv-x2cr-398f"},{"url":"https://pkg.go.dev/vuln/GO-2024-3182","tags":["web"]},{"url":"https://github.com/advisories/GHSA-wpr2-j6gr-pjw9"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/58xxx/CVE-2024-58375.json","tags":["advisory"]},{"url":"https://github.com/opentofu/opentofu","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2024-58375","title":"OpenTofu before 1.8.3 Secret Variable Leaking via Static Evaluation","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","status":"published","published":"2026-08-16T13:14:03.955Z","modified":"2026-10-08T15:21:10.813Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"cna"}],"cwes":["CWE-497"],"updated_at":"2026-11-02T14:34:08.843708Z"}],"euvd":[{"id":"EUVD-2024-55722","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","status":"published","published":"2026-08-16T13:14:03Z","modified":"2026-10-08T15:21:10Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"}],"updated_at":"2026-11-02T17:27:32.18003Z"}],"ghsa":[{"id":"GHSA-p8hv-x2cr-398f","title":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals...","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","status":"published","published":"2026-08-16T15:30:24Z","modified":"2026-08-16T15:30:33Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/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","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-497"],"updated_at":"2026-11-02T15:10:32.287939Z"},{"id":"GHSA-wpr2-j6gr-pjw9","title":"OpenTofu potential leaking of secret variable values when using static evaluation in v1.8","description":"### Impact\nUsers 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.\n\n### Workarounds\nCheck 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.\n\n### Examples\n```hcl\nvariable \"backend_path\" {\n        type = string\n        sensitive = true\n}\n\nterraform {\n        backend \"local\" {\n                path = var.backend_path\n        }\n}\n```\n\n```hcl\nvariable \"mod_info\" {\n        type = string\n        sensitive = true\n}\n\nmodule \"foo\" {\n        source = var.mod_info\n        //version = var.mod_info\n}\n```\n\n","status":"published","published":"2024-10-03T16:51:50Z","modified":"2024-10-09T22:51:44Z","cvss":[{"version":"4.0","score":2.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P","level":"low"},{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"low"}],"cwes":["CWE-200"],"updated_at":"2026-11-02T14:38:09.785133Z"}],"nvd":[{"id":"CVE-2024-58375","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","status":"published","published":"2026-08-16T14:16:53.627Z","modified":"2026-10-08T16:16:49.483Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/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","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"secondary"}],"cwes":["CWE-497"],"updated_at":"2026-11-02T14:10:47.77313Z"}],"osv":[{"id":"CVE-2024-58375","title":"OpenTofu before 1.8.3 Secret Variable Leaking via Static Evaluation","description":"OpenTofu versions 1.8.0 through 1.8.2 do not properly restrict sensitive variables and locals when users have opted into static evaluation of module sources, versions, and backend configurations. As a result, values marked as sensitive may be exposed through these configuration elements instead of producing an error. This is fixed in OpenTofu 1.8.3, which adds explicit errors to prevent the use of sensitive values in these contexts.","status":"published","published":"2026-08-16T13:14:03.955Z","modified":"2026-10-28T02:30:50.176715838Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-497"],"updated_at":"2026-11-02T15:44:45.107804Z"},{"id":"GHSA-wpr2-j6gr-pjw9","title":"OpenTofu potential leaking of secret variable values when using static evaluation in v1.8","description":"### Impact\nUsers 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.\n\n### Workarounds\nCheck 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.\n\n### Examples\n```hcl\nvariable \"backend_path\" {\n        type = string\n        sensitive = true\n}\n\nterraform {\n        backend \"local\" {\n                path = var.backend_path\n        }\n}\n```\n\n```hcl\nvariable \"mod_info\" {\n        type = string\n        sensitive = true\n}\n\nmodule \"foo\" {\n        source = var.mod_info\n        //version = var.mod_info\n}\n```\n\n","status":"published","published":"2024-10-03T16:51:50Z","modified":"2026-08-17T03:55:42.801423615Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N","level":"low"},{"version":"4.0","score":2.9,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P","level":"low"}],"cwes":["CWE-200"],"updated_at":"2026-11-02T15:46:58.767335Z"},{"id":"GO-2024-3182","title":"OpenTofu potential leaking of secret variable values when using static evaluation in v1.8 in github.com/opentofu/opentofu","description":"OpenTofu potential leaking of secret variable values when using static evaluation in v1.8 in github.com/opentofu/opentofu","status":"published","published":"2024-10-09T20:29:23Z","modified":"2026-08-17T03:55:42.801423615Z","updated_at":"2026-11-02T15:47:01.453823Z"}]}}
