軟件安全技術

孫玉霞 翁健 李哲濤 許穎媚 羅亮

  • 出版商: 清華大學
  • 出版日期: 2022-04-01
  • 定價: $419
  • 售價: 8.5$356
  • 語言: 簡體中文
  • ISBN: 7302603855
  • ISBN-13: 9787302603856
  • 下單後立即進貨 (約4週~6週)

  • 軟件安全技術-preview-1
  • 軟件安全技術-preview-2
  • 軟件安全技術-preview-3
軟件安全技術-preview-1

商品描述

本書介紹軟件安全開發技術和軟件安全問題的分析防治技術。全書分五部分,共13章。第一部分為軟件安全引論。第二部分為軟件安全開發,講解軟件安全開發周期、分析與設計、編程與測試。第三部分為軟件漏洞問題及防治,包括漏洞的概述、機理和防治技術。第四部分為惡意軟件問題及防治,講解惡意代碼的基本知識、機理與防治技術。第五部分為軟件侵權問題及權益保護,講述軟件知識產權相關法律與侵權問題、軟件版權保護和防破解技術。 本書可作為高等院校網絡空間安全、信息安全和軟件工程等電腦類專業的教材,也可作為相關專業學生和軟件工程師的參考書。

目錄大綱

目錄

第一部分軟件安全引論

第1章軟件安全概述31.1軟件安全的重要性3

1.1.1軟件的作用與軟件安全3

1.1.2安全威脅的形勢與軟件安全4

1.1.3對軟件安全的重視6

1.2軟件安全的概念6

1.2.1軟件安全的定義6

1.2.2軟件的安全屬性7

1.3軟件安全問題9

1.3.1軟件漏洞9

1.3.2惡意軟件10

1.3.3軟件侵權12

1.3.4軟件後門13

1.4軟件安全技術與標準14

1.4.1軟件安全開發技術14

1.4.2軟件安全防護技術15

1.4.3軟件安全的相關標準15

1.5白帽子與黑帽子16

1.5.1黑白有別16

1.5.2白帽子的重要性17

1.6實例分析18

羅賓漢勒索軟件事件實例18

1.7本章小結19

【思考與實踐】19第二部分軟件安全開發

第2章軟件安全開發周期232.1軟件安全開發過程23

2.2軟件安全開發模型25

2.2.1微軟公司的SDL模型25

2.2.2OWASP的SAMM模型29

2.2.3McGraw的BSI模型33

2.2.4SEI的TSPSecure模型36

2.3實例分析37

某醫療行業軟件安全開發方案實例37

2.4本章小結38

【思考與實踐】38

〖3〗軟件安全技術目錄〖3〗第3章軟件安全分析與設計40

3.1軟件安全需求分析40

3.1.1安全需求分析的方法40

3.1.2攻擊用例42

3.2軟件安全設計44

3.2.1安全設計的內容與原則44

3.2.2安全設計的方法與模式48

3.2.3威脅建模51

3.3實例分析53

3.3.1軟件安全需求分析實例53

3.3.2軟件威脅建模實例56

3.4本章小結60

【思考與實踐】60

第4章安全編程61

4.1安全編程概述61

4.1.1安全編程原則61

4.1.2安全編程環境62

4.1.3編程語言安全性65

4.2基本安全編程67

4.2.1輸入安全67

4.2.2異常處理安全70

4.2.3內存安全73

4.2.4線程與進程安全76

4.3數據安全編程82

4.3.1加密算法安全82

4.3.2密鑰安全86

4.4應用安全編程88

4.4.1權限控制安全88

4.4.2遠程調用安全89

4.4.3面向對象應用的安全編程92

4.4.4Web應用的安全編程93

4.5實例分析95

4.5.1Web應用登錄模塊的安全編程實例95

4.5.2某教務管理系統權限管理的安全編程實例96

4.6本章小結98

【思考與實踐】99

第5章軟件安全測試101

5.1軟件安全測試的內容101

5.2軟件安全測試的方法103

5.3靜態的軟件安全測試104

5.3.1代碼安全審查104

5.3.2靜態代碼分析105

5.4滲透測試106

5.4.1滲透測試過程106

5.4.2滲透測試工具108

5.4.3滲透測試與法律道德109

5.5模糊測試110

5.5.1模糊測試原理110

5.5.2模糊測試技術112

5.5.3模糊測試工具114

5.6實例分析115

某投資咨詢公司系統的滲透測試實例115

5.7本章小結116

【思考與實踐】116

第三部分軟件漏洞問題及防治

第6章軟件漏洞概述1196.1軟件漏洞的定義119

6.2軟件漏洞的成因與後果120

6.2.1軟件漏洞的成因120

6.2.2軟件漏洞被利用的後果122

6.3軟件漏洞的分類與分級123

6.3.1軟件漏洞的分類123

6.3.2軟件漏洞的分級125

6.4軟件漏洞的管控126

6.4.1軟件漏洞管控的必要性126

6.4.2軟件漏洞管理的標準126

6.5實例分析127

6.5.1區塊鏈API鑒權漏洞事件實例127

6.5.2Zerologon高危漏洞事件實例129

6.6本章小結129

【思考與實踐】130

第7章軟件漏洞機理131

7.1內存漏洞131

7.1.1內存漏洞概述131

7.1.2棧溢出漏洞機理131

7.1.3堆溢出漏洞機理134

7.1.4格式化串漏洞機理136

7.1.5釋放後重用漏洞機理138

7.2Web應用程序漏洞139

7.2.1Web應用程序漏洞概述139

7.2.2SQL註入漏洞機理140

7.2.3跨站腳本漏洞機理143

7.2.4跨站請求偽造漏洞機理146

7.3操作系統內核漏洞148

7.3.1操作系統內核概述148

7.3.2提權漏洞機理148

7.3.3驗證繞過漏洞機理149

7.4實例分析150

7.4.1內存漏洞源碼實例150

7.4.2某設備管控系統的漏洞檢測實例153

7.4.3Windows本地提權漏洞實例155

7.4.4Android簽名驗證繞過漏洞實例158

7.5本章小結161

【思考與實踐】161

第8章軟件漏洞防治163

8.1軟件漏洞防範概述163

8.2軟件漏洞防護機制164

8.2.1數據執行保護164

8.2.2地址空間佈局隨機化165

8.2.3安全結構化異常處理166

8.2.4棧溢出檢測的編譯選項167

8.3漏洞挖掘168

8.3.1漏洞挖掘概述168

8.3.2基於源碼的靜態漏洞分析169

8.3.3基於二進制碼的靜態漏洞分析171

8.3.4基於二進制碼的動態漏洞分析174

8.4實例分析177

8.4.1Windows漏洞防護技術應用實例177

8.4.2基於模糊測試的二進制碼漏洞檢測實例178

8.5本章小結181

【思考與實踐】181

第四部分惡意軟件問題及防治

第9章惡意代碼概述1859.1惡意代碼的定義185

9.2惡意代碼的類型及特徵185

9.2.1病毒185

9.2.2蠕蟲190

9.2.3木馬192

9.2.4勒索軟件194

9.2.5Rootkit196

9.2.6發展趨勢197

9.3惡意代碼的管控199

9.3.1惡意代碼的相關法律法規199

9.3.2惡意代碼的防治管理201

9.4實例分析201

9.4.1GandCrab勒索軟件實例201

9.4.2Scranos Rootkit實例202

9.5本章小結204

【思考與實踐】204

第10章惡意軟件的機理206

10.1可執行文件206

10.1.1可執行文件的類型206

10.1.2PE文件格式207

10.1.3可執行文件的生成210

10.1.4系統引導與應用程序執行212

10.2PE病毒的機理213

10.2.1PE病毒的基本結構213

10.2.2PE病毒的工作機制214

10.3蠕蟲的機理216

10.3.1蠕蟲的基本結構216

10.3.2蠕蟲的工作機制217

10.4木馬的機理217

10.4.1木馬的基本結構217

10.4.2木馬的工作機制217

10.5Rootkit的機理218

10.5.1Rootkit的基本結構218

10.5.2Rootkit的工作機制219

10.6實例分析220

10.6.1構造可執行PE文件實例220

10.6.2灰鴿子木馬機理實例223

10.7本章小結225

【思考與實踐】225

第11章惡意代碼防治227

11.1惡意代碼逆向分析技術227

11.1.1靜態逆向分析技術227

11.1.2靜態逆向分析工具IDA228

11.1.3動態逆向分析技術230

11.1.4動態調試工具OD232

11.2基本的惡意代碼檢測技術235

11.2.1特徵值檢測235

11.2.2校驗和檢測237

11.2.3基於虛擬機的檢測238

11.3基於人工智能的惡意代碼檢測240

11.3.1惡意代碼智能檢測技術概述240

11.3.2主流平臺上的惡意代碼智能檢測技術241

11.4實例分析244

11.4.1基於IDA工具的靜態逆向分析實例244

11.4.2基於OD工具的動態逆向分析實例246

11.5本章小結249

【思考與實踐】249

第五部分軟件侵權問題及權益保護

第12章軟件侵權問題25312.1軟件知識產權與法律253

12.1.1軟件知識產權253

12.1.2開源軟件許可證254

12.1.3開源軟件與知識產權保護256

12.1.4軟件知識產權的相關法律257

12.2軟件侵權問題概述260

12.3實例分析261

Oracle公司訴Google公司Java侵權案實例261

12.4本章小結262

【思考與實踐】262

第13章軟件權益保護技術264

13.1軟件權益保護概述264

13.2軟件版權保護技術265

13.2.1用戶合法性驗證265

13.2.2軟件校驗271

13.2.3演示版限制使用272

13.2.4雲計算SaaS模式下的軟件版權保護273

13.3軟件防破解技術274

13.3.1軟件破解與防破解274

13.3.2代碼混淆276

13.3.3程序加殼281

13.3.4軟件水印281

13.3.5防調試282

13.4實例分析284

13.4.1微信雲開發模式下的軟件版權保護實例284

13.4.2Android App防破解實例285

13.5本章小結288

【思考與實踐】289

參考文獻290