軟件安全實(shí)現(xiàn)

出版時(shí)間:2010-6  出版社:清華大學(xué)出版社  作者:郭克華 編  頁數(shù):267  
Tag標(biāo)簽:無  

前言

安全編程技術(shù)是一門學(xué)科,涵蓋的編程語言較多,所需要討論的問題也較廣,因此,目前對(duì)于安全編程技術(shù)的講解很容易陷入誤區(qū):要么只是針對(duì)某一門語言講解安全問題;要么泛泛而談,缺乏具體案例。本書針對(duì)編程中常見的安全問題進(jìn)行了闡述,不局限于某一門特定語言,但是每一個(gè)話題卻以簡(jiǎn)單、通俗、易懂的案例進(jìn)行講解,逐步引領(lǐng)讀者從基礎(chǔ)到各個(gè)知識(shí)點(diǎn)進(jìn)行學(xué)習(xí),從而開發(fā)出安全可靠的系統(tǒng)。本書涵蓋了內(nèi)存安全、線程/進(jìn)程安全、異常/錯(cuò)誤處理安全、輸入安全、國際化安全、面向?qū)ο蟮木幊贪踩?、web編程安全、權(quán)限控制、遠(yuǎn)程調(diào)用和組件安全、避免拒絕服務(wù)攻擊、數(shù)據(jù)加密保護(hù)、數(shù)字簽名、安全測(cè)試和程序性能調(diào)優(yōu)等內(nèi)容。每章后面都有配套練習(xí),用于對(duì)本章內(nèi)容進(jìn)行總結(jié)演練。1.本書的知識(shí)體系學(xué)習(xí)本書,需要具有一定的編程基礎(chǔ),至少要對(duì)常見語言,如C++、.NET、Java有所了解。本書的知識(shí)體系結(jié)構(gòu)如圖1所示,遵循循序漸進(jìn)的原則,逐步引領(lǐng)讀者從基礎(chǔ)到各個(gè)知識(shí)點(diǎn)的學(xué)習(xí)。

內(nèi)容概要

本書共分為16章,針對(duì)安全編程技術(shù)進(jìn)行講解,主要涵蓋了基本安全編程、應(yīng)用安全編程、數(shù)據(jù)保護(hù)編程以及其他內(nèi)容共四大部分:第一部分包含內(nèi)存安全、線程/進(jìn)程安全、異常/錯(cuò)誤處理安全、輸入安全,第二部分包含國際化安全、面向?qū)ο蟮木幊贪踩?、Web編程安全、權(quán)限控制、遠(yuǎn)程調(diào)用和組件安全、避免拒絕服務(wù)攻擊等內(nèi)容,第三部分包含數(shù)據(jù)加密保護(hù)、其他保護(hù)、數(shù)字簽名等內(nèi)容,最后一部分包含軟件安全測(cè)試和代碼性能調(diào)優(yōu)。每章后面都有配套練習(xí),用于對(duì)本章進(jìn)行總結(jié)演練。    針對(duì)安全編程技術(shù),本書不局限于某一門特定語言,而是將編程過程中的通用安全問題進(jìn)行全面總結(jié),逐步引領(lǐng)讀者從基礎(chǔ)到各個(gè)知識(shí)點(diǎn)進(jìn)行學(xué)習(xí),以便能開發(fā)出安全可靠的系統(tǒng)。全書內(nèi)容由淺入深,并輔以大量的實(shí)例說明,每一個(gè)章節(jié)以實(shí)際案例為起點(diǎn)進(jìn)行講解,通俗易懂。    全書所有實(shí)例的源代碼均可在清華大學(xué)出版社的網(wǎng)站上下載,供讀者學(xué)習(xí)參考使用。    本書可作為有一定編程基礎(chǔ)的程序員的學(xué)習(xí)用書,也可供有經(jīng)驗(yàn)的開發(fā)人員深入學(xué)習(xí)使用,更可以為高等學(xué)校、培訓(xùn)班作為教材使用,對(duì)于缺乏安全編程實(shí)戰(zhàn)經(jīng)驗(yàn)的程序員而言,閱讀本書可以快速積累經(jīng)驗(yàn),提高編程水平。

書籍目錄

第1章  安全編程概述  1.1  軟件的安全問題    1.1.1  任何軟件都是不安全的    1.1.2  軟件不安全性的幾種表現(xiàn)    1.1.3  軟件不安全的原因  1.2  在軟件開發(fā)生命周期中考慮安全問題    1.2.1  軟件設(shè)計(jì)階段威脅建模    1.2.2  安全代碼的編寫    1.2.3  軟件的安全性測(cè)試    1.2.4  漏洞響應(yīng)和產(chǎn)品的維護(hù)  1.3  本書的內(nèi)容    1.3.1  編程中的安全    1.3.2  針對(duì)信息安全的編程    1.3.3  其他內(nèi)容    小結(jié)    練習(xí)    參考文獻(xiàn)第2章  內(nèi)存安全  2.1  緩沖區(qū)溢出    2.1.1  緩沖區(qū)    2.1.2  緩沖區(qū)溢出    2.1.3  緩沖區(qū)溢出案例    2.1.4  堆溢出    2.1.5  緩沖區(qū)溢出攻擊    2.1.6  防范方法  2.2  整數(shù)溢出    2.2.1  整數(shù)的存儲(chǔ)方式    2.2.2  整數(shù)溢出    2.2.3  解決方案  2.3  數(shù)組和字符串問題    2.3.1  數(shù)組下標(biāo)問題    2.3.2  字符串格式化問題    小結(jié)    練習(xí)    參考文獻(xiàn)第3章  線程/進(jìn)程安全  3.1  線程機(jī)制    3.1.1  為什么需要線程    3.1.2  線程機(jī)制和生命周期  3.2  線程同步安全    3.2.1  線程同步    3.2.2  案例分析    3.2.3  解決方案  3.3  線程協(xié)作安全    3.3.1  線程協(xié)作    3.3.2  案例分析    3.3.3  解決方案  3.4  線程死鎖安全    3.4.1  線程死鎖    3.4.2  案例分析    3.4.3  解決方案  3.5  線程控制安全    3.5.1  安全隱患    3.5.2  案例分析    3.5.3  解決方案  3.6  進(jìn)程安全    3.6.1  進(jìn)程概述    3.6.2  進(jìn)程安全問題    小結(jié)    練習(xí)    參考文獻(xiàn)第4章  異常/錯(cuò)誤處理中的安全  4.1  異常/錯(cuò)誤的基本機(jī)制    4.1.1  異常的出現(xiàn)    4.1.2  異常的基本特點(diǎn)  4.2  異常捕獲中的安全    4.2.1  異常的捕獲    4.2.2  異常捕獲中的安全  4.3  異常處理中的安全    4.3.1  finally的使用安全    4.3.2  異常處理的安全  4.4  面向過程異常處理中的安全問題    4.4.1  面向過程的異常處理    4.4.2  安全準(zhǔn)則  ……第5章  輸入安全第6章  國際化安全第7章  面向?qū)ο笾械木幊贪踩?章  Web編程安全第9章  權(quán)限控制第10章  遠(yuǎn)程調(diào)用和組件安全第11章  避免拒絕服務(wù)攻擊第12章  數(shù)據(jù)的加密保護(hù)第13章  數(shù)據(jù)的其他保護(hù)第14章  數(shù)字簽名第15章  軟件安全測(cè)試第16章  程序性能調(diào)優(yōu)

章節(jié)摘錄

插圖:(5)維護(hù)階段。本階段主要根據(jù)軟件運(yùn)行的情況,對(duì)軟件進(jìn)行適當(dāng)修改,以適應(yīng)新的要求;以及糾正運(yùn)行中發(fā)現(xiàn)的錯(cuò)誤。本階段工作在已完成對(duì)軟件的研制(分析、設(shè)計(jì)、編碼和測(cè)試)工作并交付使用以后進(jìn)行,一般所做的工作是編寫軟件問題報(bào)告、軟件修改報(bào)告。維護(hù)階段的成本是比較高的,設(shè)計(jì)不到位或者編碼測(cè)試考慮不周全,可能會(huì)造成軟件維護(hù)成本的大幅度提高。以一個(gè)中小規(guī)模軟件為例,如果設(shè)計(jì)、編碼和測(cè)試需要一年的時(shí)間,在投入使用后,其運(yùn)行時(shí)間可能持續(xù)三年。那么維護(hù)階段也就要持續(xù)三年。這段時(shí)間內(nèi),軟件的維護(hù)者除了要解決研制階段所遇到的各種問題,如排除障礙外,還要擴(kuò)展軟件的功能,提高性能。所以,事實(shí)上,和軟件開發(fā)工作相比,軟件維護(hù)的工作量和成本都要大得多。在實(shí)際開發(fā)過程中,軟件開發(fā)并不一定是從第一步進(jìn)行到最后一步,而是在任何階段,在進(jìn)入下一階段前一般都有一步或幾步的回溯。如在測(cè)試過程中發(fā)現(xiàn)問題可能要求修改設(shè)計(jì),用戶可能會(huì)提出一些需要來修改需求說明書等。以下主要基于安全問題,針對(duì)軟件工程中的各個(gè)階段進(jìn)行闡述。1.2.1 軟件設(shè)計(jì)階段威脅建模軟件在設(shè)計(jì)階段達(dá)到的安全性能,將是軟件整個(gè)生命周期的基礎(chǔ)。如果在設(shè)計(jì)階段沒有考慮某些安全問題,那么在編碼時(shí)就幾乎不被考慮。這些隱患將可能成為致命的缺陷,在后期以更高的代價(jià)的形式爆發(fā)出來。所以,安全問題,應(yīng)該從設(shè)計(jì)階段就開始考慮,設(shè)計(jì)要盡可能完善。

編輯推薦

《軟件安全實(shí)現(xiàn):安全編程技術(shù)》:高等學(xué)校信息安全專業(yè)規(guī)劃教材

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    軟件安全實(shí)現(xiàn) PDF格式下載


用戶評(píng)論 (總計(jì)3條)

 
 

  •   挺好 寫的就是不具體啊
  •   很有幫助,蠻適合入門,送貨速度也挺快
  •   這本書涉及到了一些軟件安全方面的應(yīng)用,不過很淺,想深入還要自己找資料,不過對(duì)于我這種不是科班出身的軟件開發(fā)者,還是不錯(cuò)的,至少提到了知識(shí)點(diǎn),其他的要靠自己深入。書里面涉及到的知識(shí)點(diǎn)大部分用java講解,有些用C方面的講解。價(jià)格和作用,我感覺性價(jià)比不錯(cuò)。
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7