注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)信息安全安全軟件開發(fā)之道:構(gòu)筑軟件安全的本質(zhì)方法

安全軟件開發(fā)之道:構(gòu)筑軟件安全的本質(zhì)方法

安全軟件開發(fā)之道:構(gòu)筑軟件安全的本質(zhì)方法

定 價:¥79.00

作 者: (美)John Viega Gary Mcgraw 著,殷麗華,張冬艷,郭云川,顏子夜 譯
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 計算機安全 計算機與互聯(lián)網(wǎng)

ISBN: 9787111459156 出版時間: 2014-03-27 包裝: 平裝
開本: 16開 頁數(shù): 336 字數(shù):  

內(nèi)容簡介

  本書被譽為安全技術(shù)領(lǐng)域的“黃帝內(nèi)經(jīng)”,由安全技術(shù)大師親力打造,暢銷全球,數(shù)位安全技術(shù)專家聯(lián)袂推薦。綜合論述如何在軟件開發(fā)整個生命周期內(nèi)建立安全屏障,對于設(shè)計安全的軟件給出了高屋建瓴的指南,全面翔實,深入淺出。對于任何關(guān)注安全軟件開發(fā)的人來說,都是一本必備之書。本書分為兩大部分。第一部分介紹在編寫代碼之前應(yīng)該了解的軟件安全知識,講解如何在軟件工程的實踐中引入安全性,任何涉及軟件開發(fā)的人都應(yīng)該閱讀。主要內(nèi)容包括:軟件安全概論、軟件安全風(fēng)險管理、技術(shù)的選擇、開放源代碼和封閉源代碼、軟件安全的指導(dǎo)原則、軟件審計。第二部分涉及軟件開發(fā)實現(xiàn)的細節(jié),介紹如何在編程中避免一些常見的安全問題,適合編程一線的技術(shù)人員參考。主要內(nèi)容包括:緩沖區(qū)溢出、訪問控制、競爭條件、隨機性和確定性、密碼學(xué)的應(yīng)用、信任管理和輸入驗證、口令認證、數(shù)據(jù)庫安全、客戶端安全、穿越防火墻等。

作者簡介

  作者簡介:JohnViega,美國著名軟件安全技術(shù)專家,曾任安全軟件解決方案公司(www.securesw.com)CTO。他設(shè)計并發(fā)布了安全領(lǐng)域內(nèi)的許多工具,包括代碼掃描器(ITS4和RATS)、隨機數(shù)套件(EGADS)、自動修補工具以及安全編程庫等。他還是Mailman的原始開發(fā)者、GNU郵件列表的管理者。 GaryMcGraw,美國Cigital公司CTO,在安全風(fēng)險管理領(lǐng)域從事軟件安全性研究和技術(shù)規(guī)劃工作。他是美國空軍研究實驗室、DARPA、美國國家科學(xué)基金以及NIST高級技術(shù)項目的資助對象和首席調(diào)研員。曾經(jīng)撰寫了多本安全技術(shù)圖書。 譯者簡介:殷麗華,博士,IEEE會員,現(xiàn)任職于中國科學(xué)院信息工程研究所。主持和參加國家973、863、自然科學(xué)基金、發(fā)改委安全產(chǎn)品專項等多項國家級重大項目,具有豐富的軟件開發(fā)與組織管理經(jīng)驗。研究領(lǐng)域包括網(wǎng)絡(luò)與信息安全、安全性分析、物聯(lián)網(wǎng)安全技術(shù)等?!埗G,博士,計算機學(xué)會會員,任職于北京科技大學(xué)計算機與通信工程學(xué)院,承擔或參與了多項相關(guān)領(lǐng)域的重大課題,積累了豐富的項目開發(fā)與管理經(jīng)驗。主要研究方向是網(wǎng)絡(luò)與信息安全、網(wǎng)絡(luò)多媒體傳輸?shù)?。郭云川,博士,曾參與多項國家級網(wǎng)絡(luò)與信息安全項目建設(shè),目前主要從事物聯(lián)網(wǎng)隱私保護研發(fā)工作。主要研究方向為安全分析、物聯(lián)網(wǎng)安全技術(shù)、形式化方法等?!☆佔右?,博士,曾參與分布式、嵌入式、高性能計算等類型的多個軟件系統(tǒng)的開發(fā)工作,目前主要從事醫(yī)學(xué)圖像處理研究和大型醫(yī)療裝備系統(tǒng)的開發(fā)工作。

圖書目錄

目  錄
譯者序
對本書的贊譽

前言
致謝
第1章 軟件安全概論   1
1.1 都是軟件惹的禍   1
1.2 對安全問題的處理   4
1.2.1 Bugtraq   5
1.2.2 CERT 公告   5
1.2.3 RISKS文摘   6
1.3 影響軟件安全的技術(shù)趨勢   6
1.4 非功能性需求   9
1.4.1 什么是安全   10
1.4.2 難道只是可靠性   10
1.5 “滲透-修補”是個壞方法   11
1.6 藝術(shù)和工程   12
1.7 安全目標   12
1.7.1 預(yù)防   13
1.7.2 跟蹤與審計   13
1.7.3 監(jiān)控   13
1.7.4 隱私和保密   14
1.7.5 多級安全   14
1.7.6 匿名   14
1.7.7 認證   15
1.7.8 完整性   16
1.8 常見軟件安全缺陷   16
1.9 軟件項目目標   17
1.10 結(jié)論   18
第2章 軟件安全風(fēng)險管理   19
2.1 軟件安全風(fēng)險管理概述   19
2.2 安全人員的任務(wù)   21
2.3 軟件生命周期中的軟件安全人員   22
2.3.1 獲取需求   22
2.3.2 風(fēng)險評估   23
2.3.3 安全設(shè)計   24
2.3.4 實現(xiàn)   25
2.3.5 安全測試   25
2.4 現(xiàn)實的權(quán)衡   26
2.5 讓人們?nèi)ニ伎及踩?nbsp;  26
2.6 軟件風(fēng)險管理實踐   26
2.6.1 當開發(fā)走向歧途   27
2.6.2 當安全分析走向歧途   27
2.7 通用準則   28
2.8 結(jié)論   30
第3章 技術(shù)的選擇   31
3.1 語言的選擇   31
3.2 分布式對象平臺的選擇   34
3.2.1 COBRA   34
3.2.2 DCOM   35
3.2.3 EJB和RMI   37
3.3 操作系統(tǒng)的選擇   37
3.4 認證技術(shù)   38
3.4.1 基于主機的認證   39
3.4.2 物理令牌   40
3.4.3 生物認證   40
3.4.4 密碼認證   41
3.4.5 深度防御與認證   41
3.5 結(jié)論   42
第4章 開放源代碼和封閉源代碼   43
4.1 通過隱藏實現(xiàn)安全   43
4.1.1 逆向工程   45
4.1.2 代碼混淆   46
4.1.3 緊包軟件的安全   47
4.1.4 通過隱藏實現(xiàn)安全并非萬能   47
4.2 開源軟件   47
4.3 “多眼球現(xiàn)象”是真的嗎   47
4.3.1 漏洞檢測是困難的   49
4.3.2 其他的憂慮   50
4.4 關(guān)于發(fā)布加密算法   51
4.5 另外兩個關(guān)于開源的謬論   51
4.5.1 微軟謬論   51
4.5.2 Java謬論   52
4.6 例子:GNU Mailman的安全   52
4.7 證據(jù):特洛伊木馬   53
4.8 開放源碼還是不開放源碼   54
4.9 另一個來自于緩沖區(qū)溢出的安全教訓(xùn)   54
4.10 忠告   55
4.11 結(jié)論   55
第5章 軟件安全的指導(dǎo)原則   56
5.1 確保最薄弱環(huán)節(jié)的安全   57
5.2 深度防御   59
5.3 失效安全   60
5.4 最小特權(quán)   62
5.5 分割   63
5.6 盡可能簡單   64
5.7 提升隱私權(quán)   66
5.8 記住隱藏信息很困難   68
5.9 不要輕信   69
5.10 使用社會資源   70
5.11 結(jié)論   70
第6章 軟件審計   71
6.1 架構(gòu)的安全性分析   73
6.1.1 攻擊樹   74
6.1.2 報告分析結(jié)果   78
6.2 實現(xiàn)安全性分析   79
6.2.1 審計源代碼   79
6.2.2 源碼級的安全審計工具   80
6.2.3 在分析中使用RATS   81
6.2.4 安全掃描軟件的有效性   82
6.3 結(jié)論   83
第7章 緩沖區(qū)溢出   84
7.1 什么是緩沖區(qū)溢出   86
7.2 為什么緩沖溢出是安全問題   87
7.3 緩沖區(qū)溢出的防御   89
7.4 主要的陷阱    89
7.5 內(nèi)部緩沖區(qū)溢出   93
7.6 更多的輸入溢出   93
7.7 其他風(fēng)險   94
7.8 幫助工具   94
7.9 堆破壞和棧破壞   96
7.10 堆溢出   98
7.11 棧溢出   101
7.11.1 破譯堆棧   101
7.11.2 陷入無限循環(huán)……并更糟  105
7.12 代碼攻擊   113
7.12.1 UNIX漏洞利用   114
7.12.2 關(guān)于Windows   119
7.13 結(jié)論   119
第8章 訪問控制   120
8.1 UNIX訪問控制模型   120
8.1.1 UNIX權(quán)限工作原理   121
8.1.2 修改文件屬性   122
8.1.3 修改文件的所有權(quán)   124
8.1.4 umask命令   125
8.1.5 編程接口   125
8.1.6 Setuid編程   127
8.2 Windows NT的訪問控制   130
8.3 分割   132
8.4 細粒度權(quán)限   134
8.5 結(jié)論   134
第9章 競爭條件   135
9.1 什么是競爭條件   135
9.2 檢查時間與使用時間   138
9.2.1 攻破passwd   139
9.2.2 避免 TOCTOU 問題   142
9.3 安全的文件訪問   143
9.4 臨時文件   146
9.5 文件鎖定   146
9.6 其他競爭條件   147
9.7 結(jié)論   148
第10章 隨機性和確定性   149
10.1 偽隨機數(shù)發(fā)生器   149
10.1.1 偽隨機數(shù)發(fā)生器實例   151
10.1.2 Blum-Blum-ShubPRNG   152
10.1.3 Tiny PRNG   153
10.1.4 對PRNG的攻擊   153
10.1.5 在網(wǎng)絡(luò)賭博游戲中作弊   153
10.1.6 PRNG的統(tǒng)計測試   155
10.2 熵的收集和估計   155
10.2.1 硬件解決方案   156
10.2.2 軟件解決方案   158
10.2.3 糟糕的熵收集示例   163
10.3 處理熵   164
10.4 實用的隨機數(shù)據(jù)來源   166
10.4.1 Tiny   166
10.4.2 Windows的隨機數(shù)據(jù)   167
10.4.3 Linux的隨機數(shù)   167
10.4.4 Java中的隨機數(shù)   169
10.5 結(jié)論   171
第11章 密碼學(xué)的應(yīng)用   172
11.1 一般性建議   172
11.1.1 開發(fā)者并不是密碼專家   173
11.1.2 數(shù)據(jù)完整性   174
11.1.3 密碼出口的有關(guān)法律   174
11.2 常用密碼庫   175
11.2.1 Cryptlib   175
11.2.2 OpenSSL   176
11.2.3 Crypto++   177
11.2.4 BSAFE   178
11.2.5 Cryptix   179
11.3 利用密碼學(xué)編程   180
11.3.1 加密   180
11.3.2 散列算法   184
11.3.3 公共密鑰加密   185
11.3.4 多線程   189
11.3.5 cookie加密   189
11.4 加密散列更多的應(yīng)用   191
11.5 SSL和TLS   192
11.6 Stunnel   194
11.7 一次一密   195
11.8 結(jié)論   198
第12章 信任管理和輸入驗證   199
12.1 關(guān)于信任   200
12.2 不恰當信任的例子   201
12.2.1 信任是傳遞的   201
12.2.2 預(yù)防惡意的調(diào)用者   204
12.2.3 安全地調(diào)用其他程序   208
12.2.4 源自Web的問題   210
12.2.5 客戶端安全   212
12.2.6 Perl問題   214
12.2.7 格式字符串攻擊   215
12.3 自動檢測輸入問題   216
12.4結(jié)論   219
第13章 口令認證   220
13.1?口令存儲   220
13.2?向口令數(shù)據(jù)庫中添加用戶   222
13.3?口令認證的方式   231
13.4?口令選擇   235
13.4.1?更多的建議   236
13.4.2?擲骰子   237
13.4.3?口令短語   240
13.4.4?應(yīng)用程序選擇的口令   241
13.5?一次性口令   242
13.6?結(jié)論   252
第14章 數(shù)據(jù)庫安全   253
14.1?基礎(chǔ)知識   253
14.2?訪問控制   254
14.3?在訪問控制中使用視圖   256
14.4?字段保護   257
14.5?針對統(tǒng)計攻擊的安全防衛(wèi)   260
14.6?結(jié)論   263

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號