代碼安全

楊東曉、章磊、付威、金竹君

  • 出版商: 清華大學
  • 出版日期: 2020-07-01
  • 定價: $210
  • 售價: 8.5$179
  • 語言: 簡體中文
  • ISBN: 7302550905
  • ISBN-13: 9787302550907
  • 相關分類: C 程式語言資訊安全
  • 立即出貨 (庫存 < 3)

  • 代碼安全-preview-1
  • 代碼安全-preview-2
  • 代碼安全-preview-3
代碼安全-preview-1

買這商品的人也買了...

商品描述

本書首先系統地介紹了軟件安全開發的基礎知識,包括軟件開發的現狀和常見的開發生命周期模型;在傳統需求分析方法基礎上介紹軟件安全需求與設計,重點介紹威脅建模方法;並結合軟件開發模型介紹軟件發布和部署階段的安全措施;之後具體結合C、C++、Java、PHP、Python等語言,詳細講解其安全現狀、常見漏洞和編碼規範;最後概述了安全測試的流程和方法,並結合典型案例讓學生能夠對這些代碼中的安全漏洞有比較全面和深入的瞭解,從而在實際研發工作中避免出現相似漏洞。

目錄大綱

第1章軟件安全開發基礎1

1.1軟件安全開發現狀1

1.1.1軟件安全面臨的挑戰1

1.1.2軟件安全開發問題2

1.1.3軟件安全問題成因5

1.2軟件開發生命周期7

1.3軟件安全開發模型11

1.3.1安全開發生命周期11

1.3.2內建安全成熟度模型14

1.3.3軟件保證成熟度模型15

1.3.4綜合的輕量應用安全過程16

1.4人員角色規劃17

第2章軟件安全需求與設計18

2.1安全需求概述18

2.1.1安全需求的定義18

2.1.2安全需求的標準19

2.2安全需求分析方法20

2.2.1安全需求分析過程20

2.2.2安全需求分析的常用方法20

2.3系統設計概述23

2.3.1系統設計內容23

2.3.2安全設計原則24

2.4安全設計方法26

2.4.1危險性分析27

2.4.2基於模式的軟件安全設計27

2.4.3安全關鍵單元的確定和設計29

2.5威脅建模29

2.5.1威脅建模概述29

2.5.2威脅建模過程302.5.3威脅建模的輸出與緩解35

代碼安全目錄

第3章C和C++安全編碼37

3.1C和C++開發安全現狀37

3.2C和C++常見安全漏洞38

3.2.1緩沖區溢出漏洞38

3.2.2釋放後使用漏洞39

3.2.3整型溢出漏洞40

3.2.4空指針解引用漏洞40

3.2.5格式化字符串漏洞41

3.2.6內存泄漏42

3.2.7二次釋放漏洞42

3.2.8類型混淆漏洞43

3.2.9未初始化漏洞43

3.3C和C++安全編碼規範44

第4章Java安全編碼46

4.1Java開發安全現狀46

4.2Java常見安全漏洞48

4.2.1SQL註入漏洞48

4.2.2XSS漏洞51

4.2.3重定向漏洞55

4.2.4路徑遍歷漏洞57

4.2.5不安全的安全哈希算法60

4.2.6XPath註入漏洞61

4.2.7硬編碼密碼63

4.3Java安全編碼規範64

4.3.1聲明和初始化64

4.3.2表達式69

4.3.3面向對象73

4.3.4方法75

4.3.5異常處理77

4.3.6線程鎖81

4.3.7線程API83

4.3.8輸入輸出87

第5章PHP安全編碼92

5.1PHP開發安全現狀92

5.2PHP常見安全漏洞94

5.2.1會話攻擊94

5.2.2命令註入攻擊95

5.2.3客戶端腳本註入攻擊96

5.2.4變量覆蓋漏洞98

5.2.5危險函數99

5.3PHP安全編碼規範101

5.3.1語言規範102

5.3.2程序註釋103

5.3.3項目規範104

5.3.4特殊規範105

5.3.5配置安全106

第6章Python安全編碼108

6.1Python開發安全現狀108

6.2Python常見安全威脅的防禦111

6.2.1代碼註入的防禦111

6.2.2密碼存儲方式112

6.2.3異常處理機制113

6.2.4文件上傳漏洞的防禦115

6.3Python安全編碼規範116

6.3.1代碼佈局116

6.3.2註釋語句117

6.3.3命名規範118

6.3.4函數安全120

6.3.5編程建議121

第7章軟件安全測試123

7.1安全測試概述123

7.2安全測試流程125

7.2.1安全測試具體流程125

7.2.2安全測試具體內容127

7.2.3安全測試原則129

7.2.4PDCA循環129

7.3安全測試技術131

7.3.1人工審查131

7.3.2代碼分析131

7.3.3模糊測試134

7.3.4滲透測試138

第8章軟件安全發布與部署141

8.1軟件安全發布141

8.1.1最終安全審查141

8.1.2安全事故響應計劃143

8.2軟件安全部署143

8.2.1漏洞管理143

8.2.2環境強化143

8.2.3操作激活143

第9章典型案例144

9.1應用背景144

9.2企業需求144

9.3解決方案145

9.4方案優勢147

附錄A英文縮略語148

參考文獻149