高等院校密碼信息安全類專業(yè)系列教材:軟件安全
定 價:30 元
- 作者:任偉 著
- 出版時間:2010/7/1
- ISBN:9787118069037
- 出 版 社:國防工業(yè)出版社
- 中圖法分類:TP311.52
- 頁碼:217
- 紙張:膠版紙
- 版次:1
- 開本:16開
軟件安全概述、預備知識(介紹了Windows API編程簡介、Win32匯編語言程序設計、PE文件格式布局及其裝載的相關背景知識)、軟件缺陷和漏洞、惡意代碼分析、安全軟件開發(fā)生命周期、軟件體系安全分析、軟件安全需求分析、安全編碼、軟件安全測試、軟件保護以及軟件安全的國際研究現(xiàn)狀。
每章都給出小結歸納全章的內容,便于復習。每個章節(jié)都有擴展閱讀的建議和參考文獻,指導進一步的課外自主學習。每個章節(jié)還配備了習題可供讀者自測和引申思考。部分打*號的內容具有一定深度,可以選學。本教材各部分內容既相互聯(lián)系又相對獨立,可依據(jù)教學對象的特點組織編排,方便讀者根據(jù)需要進行選擇。
《軟件安全》可作為大學本科相關課程的教材,內容實用,也可供廣大信息安全從業(yè)人員和愛好者自學之用!盾浖踩愤有配套的書籍網站,提供電子版、教案(課件)以及相關參考文獻的下載。
信息系統(tǒng)所面臨的各種安全威脅日益突出,信息安全問題已成為涉及國家政治、軍事、經濟和文教等諸多領域的戰(zhàn)略安全問題。我國政府對網絡與信息安全問題高度重視,國辦印發(fā)的文件《關于網絡信任體系建設的若干意見》明確指出了要特別重視網絡安全的6方面內容;中辦、國辦印發(fā)的《國家2006年至2020年長期科學發(fā)展規(guī)劃》中也突出了對各種網絡安全問題的關注,將建設國家信息安全保障體系列為我國信息化發(fā)展的戰(zhàn)略重點;國家“十一五”計劃中也包含了提升國家信息安全保障服務能力的戰(zhàn)略要求。西方發(fā)達國家紛紛制訂了本國的網絡與信息安全戰(zhàn)略。比如,美國奧巴馬政府正在采取措施加強美國網絡戰(zhàn)的備戰(zhàn)能力,其中一項措施是創(chuàng)建網絡戰(zhàn)司令部,這表明美國的網絡與信息安全戰(zhàn)略已經由克林頓時代的“全面防御”、布什時代的“攻防結合”,轉到奧巴馬時代的“攻擊為主,網絡威懾”。
當前,制約我國網絡與信息安全事業(yè)發(fā)展的瓶頸之一就是人才極度匱乏,為此,教育部從2001年起,陸續(xù)批準了包括北京郵電大學在內的近百所各類高校開設信息安全本科專業(yè)。但是,畢竟與其他經典的本科專業(yè)相比,信息安全本科專業(yè)的建設問題還面臨許多挑戰(zhàn),需要全國同行共同努力,早日探索出一條辦好信息安全專業(yè)的捷徑?上驳氖牵F(xiàn)在國內若干高校的教授團隊都紛紛行動起來,各盡所能在信息安全本科專業(yè)建設方面取得了不少業(yè)績。比如,靈創(chuàng)團隊就是眾多熱心于信息安全本科專業(yè)建設的創(chuàng)新團隊,該團隊中的“信息安全教學團隊”被教育部和財政部批準為“2009年度國家級教學團隊”;其完成的成果“信息安全專業(yè)規(guī)范研究與專業(yè)體系建設”獲得了國家級教學成果獎二等獎;其帶頭人也被評為“國家級教學名師”并受到了胡錦濤等黨和國家領導人的接見。希望國內能夠有更多的類似教學團隊投身于信息安全本科專業(yè)建設。
由于教材建設是信息安全專業(yè)建設的重點和難點之一,中國密碼學會教育工作委員會自成立以來就一直致力于推進密碼學與信息安全方面的教學和教材建設,比如,與國防工業(yè)出版社聯(lián)合主辦了“密碼學與信息安全教學研討會”等一系列研討活動,并成立“普通高等教育本科密碼信息安全類系列教材”編審委員會來組織策劃相關系列教材。編審委員會在充分研究信息安全本科專業(yè)規(guī)范的基礎上,經過細致研究,多次反復討論,規(guī)劃了與信息安全本科專業(yè)規(guī)范相配套的本系列教材。
第1章 軟件安全概述
1.1 軟件的概念
1.1.1 軟件的定義
1.1.2 軟件的分類
1.2 軟件安全的概念
1.3 軟件安全的知識體系
1.4 軟件安全與其他相關領域的關系
1.4.1 軟件工程
1.4.2 軟件保證
1.4.3 軟件質量
1.4.4 軟件可靠性
1.4.5 軟件容錯
1.4.6 應用安全
1.5 專有名稱及定義
1.6 軟件安全工具簡介
1.6.1 反匯編器
1.6.2 調試器
1.6.3 反編譯器
1.6.4 系統(tǒng)監(jiān)控工具
1.6.5 修補和轉儲工具
小結
參考文獻
習題
第2章 預備知識
2.1 Windows API編程簡介
2.1.1 Windows應用程序的組成
2.1.2 Windows API
2.1.3 Windows編程的基本概念
2.1.4 Win32數(shù)據(jù)類型、句柄、命名法
2.1.5 函數(shù)指針
2.1.6 消息結構、類型與機制
2.2 Win32匯編語言程序設計簡介
2.2.1 80x86處理器寄存器
2.2.2 IA-32指令系統(tǒng)
2.2.3 win32匯編程序舉例
2.2.4 函數(shù)調用時棧的變化
2.3 PE文件格式布局及其裝載
2.3.1 PE文件結構布局
2.3.2 PE文件中的地址概念
2.3.3 PE文件內存映射方法
2.3.4 載入并執(zhí)行PE文件的過程
2.3.5 PE文件執(zhí)行時的內存布局
小結
參考文獻
習題
第3章 軟件缺陷和漏洞
3.1 缺陷和漏洞簡介
3.1.1 缺陷和漏洞的定義
3.1.2 軟件缺陷存在的原因
3.1.3 軟件安全漏洞存在的原因
3.2 軟件漏洞產生的機理
3.2.1 棧溢出漏洞
3.2.2 堆溢出漏洞
3.2.3 格式化串漏洞
3.2.4 SQL注入漏洞
3.3 漏洞的分類
小結
參考文獻
擴展閱讀建議
習題
研究參考題
第4章 惡意代碼分析
4.1 惡意軟件的分類和區(qū)別
4.2 病毒的機理與防治
4.2.1 病毒的定義
4.2.2 病毒的分類
4.2.3 文件型病毒的感染技術
4.2.4 病毒的檢測
4.3 蠕蟲的機理與防治
4.3.1 蠕蟲和病毒的區(qū)別及聯(lián)系
4.3.2 蠕蟲的分類
4.3.3 蠕蟲與軟件漏洞的關系
4.3.4 蠕蟲的基本結構
4.3.5 蠕蟲的工作方式
4.3.6 蠕蟲技術的發(fā)展
4.3.7 蠕蟲的防治與檢測
4.4 木馬的機理與防治
4.4.1 木馬的定義
4.4.2 木馬的結構
4.4.3 木馬實施網絡入侵的基本步驟
4.4.4 木馬的基本原理
4.4.5 木馬的傳播方式
4.5 其他惡意代碼的機理
4.5.1 移動代碼
4.5.2 一告軟件和間諜軟件
4.5.3 粘人軟件
4.5.4 網頁惡意腳本程序
4.5.5 即時通信病毒
4.5.6 手機病毒
4.5.7 宏病毒
4.6 惡意代碼分析技術
4.6.1 分析前的準備
4.6.2 分析過程(脫殼與動態(tài)分析)
小結
參考文獻
擴展閱讀建議
習題
研究思考題
第5章 安全軟件開發(fā)生命周期
5.1 軟件開發(fā)生命周期概述
5.1.1 軟件過程
5.1.2 軟件生存周期
5.2 傳統(tǒng)軟件開發(fā)生命周期
5.3 安全軟件開發(fā)生命周期
5.4 其他安全軟件開發(fā)生命周期模型
5.4.1 微軟可信計算安全開發(fā)生命周期
5.4.2 安全軟件開發(fā)的小組軟件過程
5.4.3 安全敏捷開發(fā)
5.4.4 軟件可信成熟度模型
5.4.5 軟件安全框架
5.4.6 BSI成熟模型
小結
參考文獻
擴展閱讀建議
習題
研究思考題
第6章 軟件體系安全分析
6.1 風險分析簡介
6.2 基于標準的風險分析
6.2.1 NIST ASSET
6.2.2 CMU SEI的OCTAVE
6.2.3 信息系統(tǒng)審核與控制協(xié)會的COBIT
6.3 STRIDE模型
6.3.1 STRIDE威脅模型
6.3.2 威脅建模的過程
小結
參考文獻
習題
第7章 軟件安全需求分析
7.1 安全規(guī)則與規(guī)章 簡介
7.1.1 OWASF的WASS
7.1.2 HIPPA
7.1.3 FISMA
7.2 軟件安全原則
7.3 軟件安全相關標準
7.4 安全需求工程
7.4.1 安全需求的基本概念
7.4.2 安全需求分析
7.4.3 安全需求工程工具
7.4.4 基于濫用和誤用案例的安全需求
小結
參考文獻
習題
研究思考題
第8章 安全編碼
8.1 安全編碼原則
8.1.1 CERT安全編碼建議
8.1.2 CERT C語言的安全編碼標準
8.1.3 避免緩沖區(qū)溢出
……
第9章 軟件安全測試
第10章 軟件保護
第11章 軟件安全的國際研究現(xiàn)狀
后記
本章從軟件的概念開始介紹,引出軟件安全的概念,并通過軟件安全威脅的現(xiàn)狀指明軟件安全的重要性和應用價值,然后簡介軟件安全的知識體系,最后區(qū)分軟件安全和其他相關領域的關系。
1.1 軟件的概念
1.1.1 軟件的定義
1983年IEEE為軟件下的定義是:計算機程序、方法、規(guī)則和相關的文檔資料以及在計算機上運行時所需的數(shù)據(jù)。目前對軟件通俗的解釋為:
軟件=程序+數(shù)據(jù)+文檔資料
其中,程序是完成特定功能和滿足性能要求的指令序列;數(shù)據(jù)是程序運行的基礎和操作的對象;文檔資料是與程序開發(fā)、維護和使用有關的圖文資料。
1.1.2 軟件的分類
對軟件的類型進行必要的劃分,根據(jù)不同類型的工程對象采用不同的安全方法是很有價值的,因此有必要從不同的角度討論計算機軟件的分類情況。
1.按軟件的功能分類
按軟件的功能進行劃分,軟件可分為系統(tǒng)軟件、支撐軟件和應用軟件三類,它們有如下的特點。
1)系統(tǒng)軟件
系統(tǒng)軟件是計算機運行的必不可少的組成部分,它與計算機硬件緊密配合,控制并協(xié)調計算機系統(tǒng)各個部件、相關的軟件和數(shù)據(jù)高效地工作。例如,操作系統(tǒng)、設備驅動程序以及通信處理程序等。
2)支撐軟件
支撐軟件是協(xié)助用戶開發(fā)軟件的工具性軟件,其中包括幫助程序人員開發(fā)軟件產品的工具,也包括幫助管理人員控制開發(fā)進程的工具。例如,支持需求分析,支持設計,支持編碼,支持測試等。
3)應用軟件
應用軟件是指在特定領域內開發(fā),為特定目的服務的軟件。目前,計算機已經成為大多數(shù)日常工作的必需工具,在很多應用領域都需要專門的軟件支持,在這些種類繁多的應用軟件中,商業(yè)數(shù)據(jù)處理軟件所占比例最大,此外還有工程與科學計算軟件、系統(tǒng)仿真軟件、人工智能軟件及各類辦公自動化軟件和信息處理軟件等。