#32382·terraform

如果启用 terraform 调试并使用 azurerm 远程后端,则会泄露敏感值

作者: rkhaled0创建于 2022年12月12日更新于 2026年9月10日
标签bugdocumentationbackend/azure

QQ Terraform 版本

贝壳 地形图 v1.3.6 运行于 linux amd64



QQ Terraform 配置文件

***************************** ******** ****** *****
变量“ in” {
类型 = 字符串
默认 = "前缀"
敏感 = 真实
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

资源“随机”“此”{
前缀 = var.in
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

输出"出"{
值 = “敏感输出”
敏感=虚假
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

输出“ 出  敏感” {
值 = “敏感-输出-敏感”
敏感 = 真实
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

三角形 {
后端“ azurerm ” {

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

QQ 调试输出

. . . . . . . . .
2022-12-09T14:25:40.443Z [DEBUG]Azure 后端响应 https://*******.blob.core.windows.net/***:
HTTP/1.1 200 已经确定
内容-Length:997
接受区域: 字节
内容-Md5:                                             
内容-类型:应用程序/json
日期:弗里,2022年12月9日 格林尼治平时14:25:36
埃塔格:"..." ..."
最后修改:Fri,2022年12月9日 14:25:32格林尼治标准时
服务器:Windows-Azure-Blob/1.0 微软-HTTPAI/2.0
X- M- Blob- Type: 块块块
X-M-Creation-Time: Fri, 2022年12月9日 格林尼治标准时12:53:20
X-M-租赁状态:有
X-M-租赁状态:已解锁
X-Ms-request-Id:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
X- MS- 服务器被复制: 真实
X-M-Version: 2018-11-09 (英语).

{
""版本":"4", ".
"terraform version":"1.3.6","erra".
"相传": 1,
"行":"124571b4-fb9b-d8f6-e7cf-ff01a11ef5a9",".
"输出":{
"出":{
"价值":"敏感输出",
"类型":"弦"
{\fn华文楷体\fs16\1cHE0E0E0}
"出 敏感":{
"价值":"敏感-输出-敏感",
"类型":"弦",
"敏感":真实
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
{\fn华文楷体\fs16\1cHE0E0E0}
"资源":[
{
"模":"管理",".
"类型":"随机",
"名":"此","",".
"提供方":"提供方[\] registry.terraform.io/桥公司/random\"",".
"通论":[
{
"史记":0,
"属性":{
"id":"前缀-型号-pig",".
"管家":无效,
"长度": 2,
"前缀":"前缀","后缀".
"分会"曰:".
{\fn华文楷体\fs16\1cHE0E0E0}
“敏感属性”:[
[
{
"类型":"得到",
"价值":"前缀"
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
[ . ]
[ . ]
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
[ . ]
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
[
"检查结果":无效
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
. . . . . . . . .

注意到tf state 的全部内容被打印出,包括敏感输出“敏感输出敏感”

• 预期行为

不日志 tfstate 的全部内容

实际行为

目前,如果启用了畸形调试模式(`TF LOG=debug|trace|json'),如果使用azurerm远程后端, 可能披露一些秘密,如敏感产出。

  • 重现步骤
  1. `terraform init'(w/azurerm远程后端)
  2. `TF LOG=debug terraform ' 适用。 * 但我认为,任何要更新 tf state 的操作都可能用纯文本打印出 tf state 内容*

++ 附加上下文

找到导致这种行为的线条下面

参考文献

无回复( N)

内容来源: hashicorp/terraform