《軟體安全測試及工具套用(第2版)》是2016年清華大學出版社出版的圖書,作者是何涇沙、錢進 編著。
基本介紹
- 書名:軟體安全測試及工具套用(第2版)
- 作者:何涇沙、錢進
- 出版社:清華大學出版社
- 出版時間:2016年
基本信息,內容介紹,目錄,
基本信息
軟體安全測試及工具套用(第2版)
作者:何涇沙、錢進 編著
定價:56元
印次:2-2
ISBN:9787302420118
出版日期:2015.11.01
印刷日期:2017.07.05
印次:2-2
ISBN:9787302420118
出版日期:2015.11.01
印刷日期:2017.07.05
內容介紹
本書主要用於培養專業的軟體安全測試高級人才。全書重點分析了軟體安全測試領域的靜態分析技術和動態分析技術。與理論知識相配套,將惠普安全分析工具Fortify和WebInspect作為實踐環節內容,使理論與實踐相結合。
目錄
第1章軟體安全基礎 1
1.1軟體安全的分類 1
1.1.1軟體安全性(SoftwareSafety) 1
1.1.2軟體安全
(SoftwareSecurity) 2
1.2軟體安全基本概念 2
1.2.1軟體安全概述 2
1.2.2軟體安全知識分類 3
1.2.3軟體安全的套用 4
1.3軟體安全問題的現狀 6
1.3.1軟體安全問題的現狀及產因 6
1.3.2軟體安全漏洞 8
1.4軟體安全技術與標準 9
1.4.1軟體安全開發技術 9
1.4.2軟體安全測試技術 10
1.4.3軟體安全相關標準 13
1.5本章小結 17
第2章軟體安全技術 19
2.1密碼學 19
2.1.1密碼學概述 19
2.1.2對稱加密 21
2.1.3非對稱加密 22
2.1.4HASH加密 22
2.2認證及身份驗證技術 24
2.2.1身份與認證 24
2.2.2數字認證 25
2.2.3生物認證 27
2.2.4微處理器認證 28
2.3訪問控制技術 28
2.3.1訪問控制概述 28
2.3.2組和角色 30
2.3.3訪問控制技術 31
2.3.4作業系統的訪問控制 33
2.4安全保障 35
2.4.1保障模型和方法 35
2.4.2審計 40
2.4.3系統評估 41
2.5計算機網路安全 44
2.5.1計算機網路安全概述 44
2.5.2OSI安全體系結構 46
2.5.3入侵檢測及安全掃描 50
2.5.4防火牆技術 57
2.5.5安全配置管理 59
2.6本章小結 60
第3章軟體安全開發 61
3.1安全的軟體開發周期 61
3.1.1安全的軟體開發周期概述 62
3.1.2安全原則、規則及規章 63
3.1.3安全需求 64
3.1.4架構、設計評審和威脅建模 66
3.1.5安全編碼原則 67
3.1.6白盒、灰盒與黑盒測試 67
3.1.7判定可利用性 69
3.1.8軟體的安全部署 71
3.1.9軟體安全開發中的角色和職責 72
3.2軟體安全編程 73
3.2.1軟體開發語言 73
3.2.2記憶體安全 74
3.2.3進程與執行緒安全 75
3.2.4異常與錯誤處理中的安全 78
3.2.5輸入安全 80
3.2.6面向對象中的安全編程 83
3.2.7Web編程安全 86
3.2.8遠程過程調用安全 96
3.3本章小結 97
第4章代碼安全靜態分析 99
4.1靜態分析 99
4.1.1靜態分析的概念 99
4.1.2靜態分析技術 100
4.1.3代碼安全靜態分析工具的引入 103
4.2靜態分析的過程 104
4.2.1建模 104
4.2.2分析算法 108
4.2.3規則 110
4.2.4報告結果 111
4.3代碼審查中的靜態分析 113
4.3.1執行代碼安全審查 114
4.3.2開發過程中的安全審查 117
4.3.3靜態分析度量標準 120
4.4靜態分析中的常見缺陷 122
4.4.1輸入的處理 122
4.4.2緩衝區溢出 127
4.4.3錯誤和異常 134
4.5軟體漏洞 136
4.5.1軟體漏洞的分類 137
4.5.2常見的安全設計問題 137
4.5.3程式語言的實現問題 142
4.5.4平台的實現問題 143
4.5.5常見的應用程式安全實現問題 143
4.5.6開發過程中的問題及部署方面的薄弱性 144
4.6本章小結 144
第5章HPFortify工具使用 145
5.1HPFortify靜態代碼分析器的主要特徵 145
5.1.1FortifySCA概述 145
5.1.2分析器概述 146
5.2軟體安裝 147
5.2.1安裝組件概述 147
5.2.2下載軟體 147
5.2.3安裝FortifySCA 147
5.2.4後續安裝任務 157
5.2.5卸載FortifySCA 158
5.3靜態代碼分析器分析原理 159
5.3.1分析階段概述 159
5.3.2分析命令示例 159
5.3.3記憶體注意事項 159
5.4靜態代碼分析器的分析過程 160
5.5靜態代碼分析器掃描的方式 161
5.6靜態代碼分析器轉換原始碼 162
5.6.1 轉換階段 162
5.6.2 轉換Java原始碼 163
5.6.3 轉換.NET原始碼 167
5.6.4 轉換C和C++代碼 170
5.6.5 轉換ABAP/4 174
5.6.6 轉換FLEX 179
5.6.7 轉換移動平台代碼 181
5.6.8 轉換其他語言 182
5.6.9 故障排除與支持 184
5.7 Audit Workbench用戶指南 186
5.7.1 Audit Workbench簡介 186
5.7.2 Audit Workbench特性與功能 197
5.7.3 配置/設定項目參數 203
5.7.4 審計分析結果 205
5.7.5 生成報告 207
5.7.6 編寫自定義規則 213
5.7.7 故障排除與支持 223
5.8 Fortify SCA安全報告分析 225
5.8.1 導出Fortify SCA報告 225
5.8.2 Fortify SCA安全報告分析 226
5.9 HP Fortify實時安全分析器的主要特徵 230
5.9.1 Fortify RTA 概述 230
5.9.2 Fortify RTA的工作原理 231
5.9.3 Fortify RTA 控制台 231
5.9.4 Fortify RTA能夠防禦的攻擊種類 231
5.9.5 Fortify RTA 套用的平台 232
5.10 HP Fortify程式跟蹤分析器(PTA) 232
5.10.1 Fortify PTA 概述 232
5.10.2 Fortify PTA 工作原理 232
5.10.3 Fortify PTA特點 233
5.10.4 Fortify PTA可以分析和防禦的安全漏洞種類 234
5.10.5 Fortify PTA套用的平台 234
5.11 本章小結 234
第6章 軟體攻擊傳統方式及領域 235
6.1 木馬和後門 235
6.1.1 木馬和後門的區別 235
6.1.2 木馬與後門的分類 236
6.1.3 木馬與後門程式的檢測及預防 237
6.2 計算機病毒 237
6.2.1 計算機病毒概述 237
6.2.2 計算機病毒的工作原理 239
6.2.3 計算機病毒的檢測與預防 240
6.3 口令 241
6.3.1 作業系統口令加密及存儲技術 242
6.3.2 Web系統口令認證技術 243
6.3.3 口令破解方式及工具 246
6.3.4 口令破解檢測技術 248
6.3.5 口令破解的防範 250
6.4 網路安全掃描 251
6.4.1 主機偵察 251
6.4.2 如何探測訪問控制規則 252
6.5 Web系統 253
6.5.1 Web系統概述 253
6.5.2 Web系統面對的威脅 254
6.5.3 Web攻擊的檢測與防範 256
6.6 資料庫 257
6.6.1 常用資料庫簡介 258
6.6.2 攻擊SQL Server資料庫 259
6.6.3 攻擊Oracle資料庫 260
6.6.4 保護SQL Server的安全 261
6.6.5 保護Oracle的安全 262
6.6.6 檢測資料庫攻擊 263
6.6.7 防止資料庫攻擊 264
6.7 本章小結 265
第7章 軟體安全動態滲透 267
7.1 會話劫持 267
7.1.1 會話劫持的工作原理 268
7.1.2 會話劫持的檢測與防範 268
7.2 伺服器的動態滲透 269
7.2.1 UNIX許可權和根訪問 270
7.2.2 Windows安全模型和漏洞利用 270
7.2.3 伺服器攻擊的檢測與防範 270
7.3 拒絕服務攻擊 271
7.3.1 Dos攻擊的類型及原理 271
7.3.2 DoS攻擊的檢測與防範 273
7.4 OWASP Top 10 273
7.4.1 OWASP 概述 273
7.4.2 OWASP 風險評估方法 274
7.4.3 OWASP Top 10 概述 277
7.4.4 注入 279
7.4.5 失效的身份認證和會話管理 282
7.4.6 跨站腳本攻擊 283
7.4.7 不安全的直接對象引用 285
7.4.8 安全配置錯誤 286
7.4.9 敏感信息泄露 287
7.4.10 功能級訪問控制缺失 287
7.4.11 跨站請求偽造 288
7.4.12 使用含有已知漏洞的組件 288
7.4.13 未驗證的重定向和轉發 288
7.5本章小結 290
第8章軟體安全動態滲透測試 291
8.1軟體安全動態滲透測試概述 291
8.1.1滲透測試的概念 291
8.1.2滲透測試階段劃分 292
8.2滲透測試執行過程 293
8.2.1滲透測試各階段的具體工作內容 293
8.2.2滲透測試的執行 293
8.2.3編寫滲透測試報告 294
8.2.4滲透測試的必要性 295
8.3本章小結 295
第9章WebInspect概述 297
9.1WebInspect的主要特點 297
9.1.1WebInspect介紹 297
9.1.2WebInspect的主要特徵 298
9.1.3WebInspect新特徵 300
9.2軟體安裝 301
9.2.1最低配置 301
9.2.2下載和安裝WebInspect 301
9.3主要功能 307
9.4本章小結 307
第10章WebInspect套用實踐 309
10.1WebInspect10.20的新功能和增強功能 309
10.2使用WebInspect 311
10.2.1基本介紹 311
10.2.2導航窗格 313
10.2.3信息窗格 319
10.2.4摘要窗格 327
10.2.5WebInspect工具列 333
10.2.6WebInspect選單欄 336
10.2.7HP套用安全中心 338
10.2.8檢查結果:嚮導掃描或基礎掃描 338
10.2.9檢查結果:Web服務掃描 342
10.2.10導出掃描 342
10.2.11導出掃描詳細信息 343
10.2.12發布到軟體安全中心 344
10.2.13HPTippingPoint導出保護規則 348
10.2.14Web套用防火牆導出
保護規則 348
10.2.15導入掃描 349
10.2.16運行AMP或WebInspectEnterprise掃描 349
10.2.17上傳一個掃描到企業伺服器 351
10.2.18管理設定 352
10.2.19管理掃描 353
10.2.20管理計畫掃描 353
10.2.21生成報告 357
10.2.22許可證管理 359
10.2.23命令行執行 361
10.2.24卸載WebInspect 364
10.3掃描一個網站 364
10.3.1嚮導掃描 364
10.3.2基礎掃描 369
10.3.3Web服務掃描 383
10.3.4企業掃描 386
10.3.5手動掃描 390
10.3.6審閱和重新測試漏洞 391
10.4WebInspect工具簡介 397
10.4.1策略管理器 398
10.4.2審計輸入編輯器 398
10.4.3Web窗體編輯器 399
10.4.4WebBrute 399
10.4.5網路發現 399
10.4.6編碼器/解碼器 400
10.4.7正則表達式編輯器 401
10.4.8HTTP編輯器 401
10.4.9Web代理 402
10.4.10智慧型升級 402
10.4.11CookieCruncher 403