上次認識了Terraform 後,接下來要了解的是 Terraform 設定不當可能帶來的安全風險,以及如何防範!
🔹 1. 供應鏈攻擊 (Supply Chain Attack):Terraform 也可能被駭?
📌 什麼是供應鏈攻擊?
供應鏈攻擊就是駭客 不直接攻擊企業,而是攻擊「企業使用的工具或第三方服務」,讓企業不知不覺受到影響。
🔴 發生情境:- 你下載了一個 Terraform 模組來建設雲端環境,但這個模組被駭客動過!
- 它偷偷幫駭客開了一個 隱藏的管理帳號,駭客可以隨時登入你的雲端系統
✅ 如何防範?
✔ 只用官方或可信賴的 Terraform 模組
✔ 掃描 Terraform 代碼,確保沒有惡意設定(可以用工具 Checkov、Tfsec)
額外插播:什麼是憑證(Secrets)?
👉 憑證 = 重要的「通行證」,讓你能存取某些系統或服務! 🔑
常見的憑證種類:
1️⃣ 帳號 + 密碼:像 AWS、GCP、Azure 的登入密碼
2️⃣ API 金鑰(API Key):給程式使用的特殊密碼,用來存取雲端服務
3️⃣ 存取憑證(Access Token):像是 OAuth Token,讓系統之間互相驗證身份
4️⃣ SSL 憑證(SSL Certificate):用來加密網站的 HTTPS 連線
🔹 2. 憑證管理:為什麼不能把密碼寫進 Terraform?
🔴 發生情境:
- 你直接在 Terraform 代碼裡寫了 AWS 密碼,然後把它上傳到 GitHub...
- 結果密碼被駭客發現,他們可以用這組密碼登入你的 AWS,刪除伺服器、竊取資料 😨
✅ 如何防範?
✔ 密碼別寫在 Terraform 代碼裡! 🚫
✔ 改用環境變數或安全工具(如 HashiCorp Vault)來存密碼
🔹 3. 配置漂移:為什麼安全設定會跑掉?
🔴 發生情境:
- 你用 Terraform 設定 S3 儲存空間為「私人」,但工程師手動改成「公開」...
- 這時候任何人都能下載你的機密檔案!🫠
✅ 如何防範?
✔ 定期執行 terraform plan
,檢查設定有沒有被偷偷改動
✔ 用監控工具(AWS Config、Terraform Cloud)來追蹤變更
📌 小結
🌟 供應鏈攻擊 → 小心使用來路不明的 Terraform 模組
🌟 憑證管理 → 密碼不能寫在 Terraform 代碼裡,改用安全存取方式
🌟 配置漂移 → 定期檢查 Terraform 設定,避免設定被手動改壞
最後一個部分就是認識企業級雲端資安策略
👉 目標:確保 Terraform 部署的基礎架構符合資安標準,避免安全風險!
🔹 1. 零信任架構 (Zero Trust):確保「最小權限」
📌 什麼是零信任?
👉 「不信任任何人,一切存取都要驗證!」 🛡️
🔴 錯誤做法(高風險):
- 讓 Terraform 有「管理所有資源」的權限(Administrator Access)❌
- 所有工程師都可以存取 Terraform 狀態檔,甚至修改重要設定 ❌
✅ 正確做法(最小權限):
✔ Terraform 只給它需要的最低權限(例如:只能建立 S3,不能刪除其他服務)
✔ 設定 IAM 角色,讓不同 Terraform 任務用不同的權限(避免單點失守)
✔ 定期審查 Terraform 的存取權限,確保沒有人有不必要的管理權限
💡 簡單來說: Terraform 不該擁有「超級管理員」權限,而是 只能做它該做的事! ✅
🔹 2. CSPM & CIEM:如何監控 Terraform 配置的安全?
📌 CSPM(雲端安全態勢管理):
👉 幫你找出 Terraform 設定的安全漏洞! 🔍
📌 CSPM 可以做什麼?
✅ 檢查 S3、VM、Database 的 Terraform 設定是否安全(例如:S3 不能設為公開)
✅ 偵測 Terraform 是否有錯誤的安全組(Security Group),防止駭客入侵
✅ 自動報告 Terraform 配置的風險,提醒你要修正
📌 常見工具:
- AWS Security Hub、Azure Security Center、GCP Security Command Center
- Terraform 專用的 Checkov、Tfsec
📌 CIEM(雲端權限管理):
👉 確保 Terraform 配置的 IAM 權限不會過大! 🔑
📌 CIEM 可以做什麼?
✅ 找出 Terraform 設定中 擁有過大權限的帳號或角色(例如:一個 Lambda 竟然有 Root 權限 😨)
✅ 檢查「哪些帳號根本沒在用,卻還有高權限?」(降低被濫用的風險) ✅ 確保 Terraform 設定的「最小權限」原則沒被破壞
📌 常見工具:
- AWS IAM Access Analyzer、Azure PIM、GCP IAM Recommender
- Open-source 工具:Prowler、IAM Policy Simulator
💡 簡單來說: CSPM 負責檢查 Terraform 配置的安全性,CIEM 負責確保 Terraform 設定的權限不會過大! ✅
🔹 3. Incident Response Playbook:如果 Terraform 造成資安問題,怎麼辦?
📌 什麼是 Incident Response?
👉 「萬一 Terraform 部署有漏洞,企業該怎麼處理?」 🚨
📌 常見情境:
1️⃣ 誤設 S3 為公開,導致機密資料外洩 😱
2️⃣ Terraform 配置錯誤,開放防火牆,駭客入侵 🛑
3️⃣ 某個帳號被盜,Terraform 配置被駭客篡改 🔥
📌 企業應對步驟(IR Playbook):
✅ 偵測問題:用 CSPM 工具自動監測 Terraform 設定異常
✅ 回應問題:如果發現錯誤設定,立刻封鎖存取權限,並啟動資安應變
✅ 修復設定:用 Terraform Roll Back(回滾),快速恢復正確設定
✅ 審查與改善:找出問題根因,確保 Terraform 未來不會再犯相同錯誤
💡 簡單來說: 如果 Terraform 造成資安問題,企業要有「應變計畫」,確保能迅速修正並避免再發生!
📌 小結
🌟 零信任架構 → Terraform 權限應該最小化,不能有「超級管理員」權限
🌟 CSPM & CIEM → 企業用這些工具來監控 Terraform 配置的安全性與 IAM 權限
🌟 Incident Response → 萬一 Terraform 設定出問題,企業要有「快速修復計畫」