發表於2024-11-25
微軟資深安全技術專傢撰寫,係統且深入闡釋威脅建模的工具、方法、原則和實踐,對威脅建模的各種常見問題進行深入分析,涉及識彆安全威脅、處理安全威脅、安全措施、徹底解決安全威脅等內容,能為程序員開發安全軟件提供有效指導。
《威脅建模:設計和交付更安全的軟件》分為五部分,共19章。第一部分(第1~2章)涉及入門知識,介紹威脅建模的策略、軟件建模的不同方法,以及威脅建模的方式與方法。第二部分(第3~6章)介紹威脅發現方麵的知識,全麵介紹並分析人們對信息技術進行威脅建模的不同方法與工具。第三部分(第7~11章)介紹管理和解決威脅方麵的內容,包括處理威脅、管理威脅以及可以用於解決威脅的策略和方法。第四部分(第12~16章)介紹在特定技術領域及其他相關領域威脅建模,包括網絡及雲係統、賬戶和身份、密碼學及用於開啓自己的安全需求分析的“需求手冊”。第五部分(第17~19章)針對經驗豐富的威脅建模人員、安全專傢、流程設計師提齣如何為特定的組織構建和定製威脅建模流程。附錄補充瞭一些威脅建模相關的信息,可以幫助讀者快速應用威脅建模技術。
如果你是一名軟件開發人員、係統管理人員或者安全專業人員,本書將告訴你在安全開發軟件的生命周期中或者軟件和係統總體設計的過程中如何使用威脅建模方法。在本書中,安全技術專傢Adam Shostack係統且深入闡釋瞭自己對威脅建模的理解與實踐。與其他書籍不同,本書詳細介紹如何從開始設計軟件、計算機服務和計算機係統時就構建與提升其安全性。
在安全事件威脅到你或者你的客戶之前及時發現並修復。
幫助軟件開發人員、IT專業人員和安全愛好者學習使用實用且操作性極強的工具、技術和方法。
探尋以軟件為關鍵要素的威脅建模方法的微妙之處,探索其應用於軟件和信息係統在構建及設計、維護等階段的威脅建模方法。
在復雜係統管理中應用威脅建模方法提升其安全性。
采用結構化理論框架管理潛在的安全威脅。
發現並識彆不斷變化的安全威脅。
《威脅建模:設計和交付更安全的軟件》提及的方法對於任何軟件類型、操作係統、編程方法和技術均有效,可操作性極強,且其已在微軟和其他IT公司中得到印證。
亞當 · 斯塔剋(Adam Shostack),微軟資深安全技術專傢,微軟可信計算項目團隊核心管理人員,擁有數十年操作係統管理和産品開發從業經驗,工作範圍涉及安全開發過程、應用安全、攻擊建模等安全領域。除瞭從事安全開發工作,他還從事針對微軟公司員工、閤作夥伴及客戶的威脅建模培訓工作。在加入微軟之前,他曾在多傢創業企業擔任信息安全與隱私執行官,曾協助建立通用漏洞與披露信息庫(CVE)、隱私增強技術研討論壇以及國際金融加密技術協會。此外,他著有多部書籍,也是位高産的博客主和公共演講者,曾與Andrew Stewart閤作齣版《The New School of Information Security》。
譯者序:威脅建模——網絡安全的“銀彈”
前言
鳴謝
第一部分 入門指南
第1章 潛心開始威脅建模 3
1.1 學習威脅建模 4
1.1.1 你正在構建什麼 4
1.1.2 哪些地方可能會齣錯 6
1.1.3 解決每個威脅 9
1.1.4 檢查你的工作 17
1.2 獨立威脅建模 19
1.3 潛心開始威脅建模的檢查列錶 19
1.4 小結 20
第2章 威脅建模策略 21
2.1 “你的威脅模型是什麼樣?” 21
2.2 集體研討 22
2.2.1 集體研討的變種方法 23
2.2.2 文獻檢索 24
2.2.3 集體研討方法的觀點 25
2.3 係統的威脅建模方法 25
2.3.1 關注資産 27
2.3.2 關注攻擊者 29
2.3.3 關注軟件 30
2.4 軟件模型 31
2.4.1 圖錶類型 32
2.4.2 數據流圖 32
2.4.3 信任邊界 36
2.4.4 圖錶中包含的內容 37
2.4.5 復雜圖 38
2.4.6 圖的標簽 38
2.4.7 圖中的顔色 39
2.4.8 入口點 39
2.4.9 錶驗證 39
2.5 小結 41
第二部分 發現威脅
第3章 STRIDE方法 45
3.1 理解STRIDE方法及其為何有用 45
3.2 假冒威脅 47
3.2.1 在同一颱機器上假冒一個進程或文件 48
3.2.2 假冒一颱機器 48
3.2.3 人員假冒 48
3.3 篡改威脅 49
3.3.1 篡改文件 49
3.3.2 篡改內存 49
3.3.3 篡改網絡 50
3.4 否認威脅 50
3.4.1 攻擊日誌 50
3.4.2 否認一種行為 51
3.5 信息泄露威脅 51
3.5.1 進程信息泄露 52
3.5.2 數據存儲信息泄露 52
3.5.3 數據流中的信息泄露 52
3.6 拒絕服務威脅 53
3.7 權限提升威脅 53
3.7.1 通過崩潰進程提升權限 53
3.7.2 通過授權失效提升權限 54
3.8 擴展示例:針對Acme-DB的STRIDE威脅 54
3.9 STRIDE變種 56
3.9.1 STRIDE-per-Element 56
3.9.2 STRIDE-per-Interaction 58
3.9.3 DESIST方法 61
3.10 準齣條件 61
3.11 小結 62
第4章 攻擊樹 63
4.1 使用攻擊樹 63
4.1.1 利用攻擊樹尋找威脅 64
4.1.2 創建新的攻擊樹 64
4.2 展現一個攻擊樹 66
4.2.1 人類可識彆的錶現形式 66
4.2.2 結構化的錶示法 70
4.3 攻擊樹示例 70
4.4 真實的攻擊樹 71
4.4.1 詐騙攻擊樹 71
4.4.2 選舉操作評估威脅樹 73
4.4.3 思維導圖 73
4.5 有關攻擊樹的觀點 75
4.6 小結 75
第5章 攻擊庫 76
5.1 攻擊庫屬性 76
5.1.1 攻擊庫及檢查列錶 77
5.1.2 攻擊庫與文檔檢查 78
5.2 CAPEC 78
5.2.1 準齣條件 80
5.2.2 有關CAPEC的觀點 81
5.3 OWASP前十名 81
5.4 小結 82
第6章 隱私工具 83
6.1 Solove的隱私分類 84
6.2 互聯網協議的隱私考慮 85
6.3 隱私影響評估 86
6.4 Nymity Slider和隱私棘輪 86
6.5 語境完整性 88
6.5.1 語境完整性啓發式決策 88
6.5.2 擴大的語境完整性啓發法 89
6.5.3 有關語境完整性的觀點 89
6.6 LINDDUN助記符 90
6.7 小結 91
第三部分 管理和解決威脅
第7章 處理和管理威脅 95
7.1 開始威脅建模項目 95
7.1.1 何時開始威脅建模 95
7.1.2 從哪裏開始和(計劃)在哪結束 97
7.1.3 從哪裏入手 97
7.2 深入分析減緩方法 99
7.2.1 減緩順序 99
7.2.2 下棋 100
7.2.3 目標優選 100
7.2.4 逃避熊的襲擊 100
7.3 利用錶格和列錶跟蹤 101
7.3.1 追蹤威脅 101
7.3.2 建立假設 103
7.3.3 外部安全注解 103
7.4 威脅建模的特定場景元素 105
7.4.1 客戶/供應商信任邊界 105
7.4.2 新技術 105
7.4.3 對API威脅建模 107
7.5 小結 108
第8章 防禦策略及技術 109
8.1 減緩威脅的策略及技術 109
8.1.1 認證:減緩欺騙威脅 110
8.1.2 完整性:減緩篡改威脅 111
8.1.3 不可否認性:減緩否認威脅 113
8.1.4 機密性:減緩信息暴露威脅 115
8.1.5 可用性:減緩拒絕服務威脅 117
8.1.6 授權:減緩權限提升威脅 118
8.1.7 策略和技術陷阱 119
8.2 利用模式解決威脅 120
8.2.1 標準部署 120
8.2.2 解決CAPEC威脅 120
8.3 減緩隱私威脅 120
8.3.1 最小化 120
8.3.2 加密 121
8.3.3 遵從性和政策 123
8.4 小結 123
第9章 解決威脅時的權衡 125
9.1 風險管理的經典策略 125
9.1.1 迴避風險 126
9.1.2 解決風險 126
9.1.3 接受風險 126
9.1.4 轉移風險 126
9.1.5 忽略風險 127
9.2 為風險管理選擇減緩措施 127
9.2.1 改變設計 127
9.2.2 應用標準減緩技術 130
9.2.3 設計定製的減緩措施 132
9.2.4 模糊編碼不是減緩威脅措施 132
9.3 針對特定威脅的優先級方法 133
9.3.1 簡單方法 133
9.3.2 利用錯誤欄威脅排序 134
9.3.3 成本估算方法 135
9.4 通過接受風險來減緩威脅 138
9.5 減緩策略中的軍備競賽 139
9.6 小結 139
第10章 驗證威脅是否已解決 141
10.1 測試威脅減緩 142
10.1.1 測試過程完整性 142
10.1.2 如何測試減緩 142
10.1.3 滲透測試 143
10.2 檢查你獲取的代碼 143
10.2.1 構建軟件模型 144
10.2.2 利用軟件模型 145
10.3 問答式威脅建模 145
10.3.1 模型/現實一緻性 146
10.3.2 任務和過程的完成 146
10.3.3 漏洞檢查 146
10.4 解決威脅的過程各方麵 147
10.4.1 威脅建模授權測試;測試授權威脅建模 147
10.4.2 驗證/轉換 147
10.4.3 操作過程中記錄假設 148
10.5 錶格與列錶 148
10.6 小結 150
第11章 威脅建模工具 151
11.1 通用工具 151
11.1.1 白闆 151
11.1.2 辦公套件 152
11.1.3 漏洞跟蹤係統 152
11.2 開放源代碼工具 153
11.2.1 TRIKE 153
11.2.2 SeaMonster 153
11.2.3 權限提升紙牌遊戲 153
11.3 商業工具 154
11.3.1 Threat Modeler 155
11.3.2 Corporate Threat Modeller 155
11.3.3 SecurITree 155
11.3.4 Little-JIL 155
11.3.5 微軟的SDL威脅建模工具 155
11.4 尚不存在的工具 158
11.5 小結 159
第四部分 科技和棘手
領域的威脅建模
第12章 需求手冊 163
12.1 為何需要“手冊” 163
12.2 需求、威脅、減緩威脅之間相互作用 164
12.3 商業需求 165
12.3.1 優於競爭 165
12.3.2 産業需求 165
12.3.3 場景驅動的需求 166
12.4 防禦/檢測/響應需求框架 166
12.4.1 防禦 166
12.4.2 檢測 168
12.4.3 響應 169
12.5 人員/過程/技術作為需求的框架 170
12.5.1 人員 170
12.5.2 過程 170
12.5.3 技術 170
12.6 開發需求與采購需求 171
12.7 閤規性驅動的需求 171
12.7.1 雲服務安全聯盟 171
12.7.2 NISTPublication200 172
12.7.3 支付卡行業數據安全標準 173
12.8 隱私需求 173
12.8.1 公平信息處理條例 173
12.8.2 從設計著手保護隱私 174
12.8.3 身份識彆七法則 174
12.8.4 微軟開發隱私標準 175
12.9 STRIDE需求 175
12.9.1 認證 176
12.9.2 完整性 177
12.9.3 不可否認性 178
12.9.4 機密性 178
12.9.5 可用性 178
12.9.6 授權 178
12.10 非需求 179
12.10.1 操作非需求 180
12.10.2 警告和提示 180
12.10.3 微軟的“十個不變法則” 180
12.11 小結 181
第13章 網絡與雲威脅 182
13.1 網絡威脅 182
13.1.1 網站威脅 182
13.1.2 網絡瀏覽器和插件威脅 183
13.2 雲租戶威脅 184
13.2.1 內部威脅 184
13.2.2 閤租威脅 185
13.2.3 閤規性威脅 185
13.2.4 法律威脅 185
13.2.5 電子取證響應威脅 186
13.2.6 各種各樣的威脅 186
13.3 雲供應者威脅 186
13.3.1 直接來自租戶的威脅 186
13.3.2 租戶行為導緻的威脅 187
13.4 移動威脅 187
13.5 小結 188
第14章 賬戶與身份識彆 189
14.1 賬戶生命周期 190
14.1.1 創建賬戶 190
14.1.2 賬戶維護 192
14.1.3 賬戶終止 192
14.1.4 賬戶生命周期檢查列錶 193
14.2 認證 193
14.2.1 登錄 194
14.2.2 登錄失敗 195
14.2.3 對於“你所擁有的”威脅 197
14.2.4 對“你是誰”的威脅 197
14.2.5 對“你所知道的”威脅 199
14.2.6 認證檢查列錶 202
14.3 賬戶恢復 202
14.3.1 時間和賬戶恢復 203
14.3.2 賬戶恢復郵件 204
14.3.3 基於知識的認證 204
14.3.4 社會認證 207
14.3.5 賬戶恢復的攻擊者驅動分析 208
14.3.6 多渠道認證 209
14.3.7 賬戶恢復檢查列錶 209
14.4 姓名、ID和SSN 210
14.4.1 姓名 210
14.4.2 身份證明文件 212
14.4.3 社保號及其他國傢身份識彆號 213
14.4.4 身份盜用 215
14.4.5 姓名、ID及SSN檢查列錶 215
14.5 小結 216
第15章 人類因素與可用性 217
15.1 人的模型 218
15.1.1 應用人的行為模型 218
15.1.2 人的模型認知科學 220
15.1.3 人的啓發式模型 223
15.2 軟件情景模型 225
15.2.1 對軟件進行建模 225
15.2.2 軟件模型的圖錶 227
15.2.3 對電子社會工程攻擊的建模 229
15.3 威脅引齣技術 229
15.3.1 集體研討 230
15.3.2 威脅建模的儀式方法 230
15.3.3 儀式分析啓發式 230
15.3.4 將可用性融於四步框架 233
15.4 解決人類因素的工具和技術 233
15.4.1 抑製人類因素作用的謬見 233
15.4.2 良好的設計決策模型 234
15.4.3 良好學習環境的設計模型 236
15.5 用戶界麵工具和技術 237
15.5.1 配置 237
15.5.2 顯式警示 238
15.5.3 吸引注意力的模型 239
15.6 測試人類因素 240
15.6.1 良好和惡劣的情景 240
15.6.2 生態有效性 241
15.7 有關可用性與儀式的觀點 242
15.8 小結 243
第16章 密碼係統威脅 244
16.1 密碼原語 245
16.1.1 基本原語 245
16.1.2 隱私原語 248
16.1.3 現代加密原語 248
16.2 典型威脅角色 250
16.3 針對密碼係統的攻擊 251
16.4 用密碼創建 253
16.4.1 做決定 253
16.4.2 準備升級 254
16.4.3 密鑰管理 254
16.4.4 解密之前驗證 255
16.5 關於密碼需要記住的事情 255
16.5.1 使用專業人士設計的密碼係統 255
16.5.2 用專業人士創建或測試的密碼代碼 255
16.5.3 密碼不是安全魔塵 256
16.5.4 假設都會公開 256
16.5.5 你仍需要管理密鑰 256
16.6 加密係統:Kerckhoffs及其原則 256
16.7 小結 257
第五部分 更上一層樓
第17章 將威脅建模帶到你的組織機構中 261
17.1 如何引入威脅建模 262
17.2 誰做什麼 264
17.3 在開發生命周期中的威脅建模 270
17.4 剋服對威脅建模的反對聲音 279
17.5 小結 281
第18章 試驗方法 283
18.1 查看縫隙 283
18.2 操作威脅模型 285
18.3 “寬街”分類法 288
18.4 博弈機器學習 293
18.5 對一傢企業進行威脅建模 293
18.6 針對威脅建模方法的威脅 294
18.7 如何實驗 297
18.8 小結 298
第19章 成功的設計 299
19.1 理解流程 299
19.2 瞭解參與者 303
威脅建模:設計和交付更安全的軟件 下載 mobi epub pdf txt 電子書 格式
威脅建模:設計和交付更安全的軟件 下載 mobi pdf epub txt 電子書 格式 2024
威脅建模:設計和交付更安全的軟件 下載 mobi epub pdf 電子書一直都在京東購買,挺放心的。
評分東西很好,東西很好,東西很好
評分感覺很不錯的安全書籍,學習學習!
評分不錯,還沒有看
評分very very very good!
評分聞名已久瞭 蠻喜歡的 看瞭沒白買
評分不知道夠不夠十個字啊
評分送人的,朋友很喜歡,對工作還是有一定的幫助的
評分裝13的書,適閤裝13
威脅建模:設計和交付更安全的軟件 mobi epub pdf txt 電子書 格式下載 2024