在軟體設計階段忽略安全威脅,往往是資安事件的根源。STRIDE 提供一套系統化的威脅分類框架,協助團隊在架構設計早期,主動識別潛在風險,而非事後補救。
什麼是 STRIDE?六個維度一次掌握
STRIDE 由微軟提出,每個字母代表一類威脅。S(Spoofing,偽冒)指攻擊者冒充合法身份存取系統。T(Tampering,竄改)指未授權修改資料或程式邏輯。R(Repudiation,否認)指使用者否認其操作,缺乏稽核紀錄可舉證。I(Information Disclosure,資訊洩漏)指敏感資料暴露給未授權對象。D(Denial of Service,阻斷服務)指耗盡系統資源使服務無法運作。E(Elevation of Privilege,權限提升)指攻擊者取得超越原本授權範圍的操作能力。六個維度各自對應明確的攻擊模式,讓威脅識別有所依據。
如何在設計階段實施 STRIDE 威脅建模
實施 STRIDE 的起點是繪製資料流程圖(DFD),標示系統元件、信任邊界與資料流向。接著對每個元件逐一套用六個維度提問,例如:「此 API 端點是否可被偽冒身份呼叫?」或「資料庫連線是否可能遭到竄改?」識別出威脅後,依照 DREAD 評分(損害程度、可重現性、可利用性、受影響範圍、可發現性)排定修復優先順序。Microsoft Threat Modeling Tool 與 OWASP Threat Dragon 皆提供視覺化介面,能有效輔助此流程,降低人工遺漏的風險。
💡 重點整理
- 設計階段優先:越早導入 STRIDE,修復成本越低。
- DFD 是核心輸入:清楚標示信任邊界才能精準識別威脅。
- 六維度逐一檢核:避免只聚焦熟悉的威脅類型而產生盲點。
- 工具輔助不可少:Threat Dragon 等工具可結構化記錄與追蹤威脅。
STRIDE 不是一次性任務,而是貫穿開發週期的持續實踐。將威脅建模納入 CI/CD 流程,每次架構變更時重新審視,才能讓安全設計真正落地。
📚 參考文獻
- Microsoft Threat Modeling Tool — 官方文件與使用指南
- OWASP Threat Dragon — 開源威脅建模工具
- STRIDE Threat Model — Microsoft 原始概念說明文件
⚠️ 本文內容基於撰寫時的最新資訊,實際應用時請參考官方文件的最新版本。
留言
張貼留言