軟件安全理論與實(shí)踐 課件 第0-3章 課程簡(jiǎn)介、軟件與軟件安全- 軟件安全風(fēng)險(xiǎn)管理_第1頁(yè)
軟件安全理論與實(shí)踐 課件 第0-3章 課程簡(jiǎn)介、軟件與軟件安全- 軟件安全風(fēng)險(xiǎn)管理_第2頁(yè)
軟件安全理論與實(shí)踐 課件 第0-3章 課程簡(jiǎn)介、軟件與軟件安全- 軟件安全風(fēng)險(xiǎn)管理_第3頁(yè)
軟件安全理論與實(shí)踐 課件 第0-3章 課程簡(jiǎn)介、軟件與軟件安全- 軟件安全風(fēng)險(xiǎn)管理_第4頁(yè)
軟件安全理論與實(shí)踐 課件 第0-3章 課程簡(jiǎn)介、軟件與軟件安全- 軟件安全風(fēng)險(xiǎn)管理_第5頁(yè)
已閱讀5頁(yè),還剩193頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第0章課程簡(jiǎn)介0.1課程目標(biāo)本課程主要講授如何開(kāi)發(fā)安全的軟件安全的軟件不是殺毒軟件、軟件防火墻等安全產(chǎn)品安全的軟件能夠抵抗大多數(shù)的攻擊并且容忍它不能抵抗的大多數(shù)攻擊;如果抵抗和容忍都是不可能的,并且軟件被破壞了,那么它也能夠?qū)⒆约簭墓粼粗懈綦x出來(lái),并優(yōu)雅降級(jí),同時(shí)將攻擊造成的損害、損失盡可能地控制到最小化,盡快恢復(fù)到可接受的操作能力水平了解軟件開(kāi)發(fā)及使用中存在的風(fēng)險(xiǎn),樹(shù)立軟件安全意識(shí)結(jié)合課程報(bào)告,掌握安全需求分析、安全設(shè)計(jì)基本理論和方法結(jié)合實(shí)踐,掌握安全編碼和安全測(cè)試的基本方法,了解和熟悉軟件安全部署與加固的相關(guān)知識(shí),具備一定的軟件攻防能力設(shè)計(jì)的軟件系統(tǒng),寫(xiě)出來(lái)的程序代碼,要能體現(xiàn)大家學(xué)過(guò)《軟件安全》這門(mén)課優(yōu)雅降級(jí)示例0.2教學(xué)內(nèi)容軟件安全范疇

軟件安全現(xiàn)狀

安全事件的根源

緩解軟件安全問(wèn)題的途徑與方法軟件部署與安全配置

系統(tǒng)運(yùn)維與應(yīng)急響應(yīng)

軟件保護(hù)技術(shù)

軟件加固軟件工程與典型軟件過(guò)程模型軟件質(zhì)量與軟件安全特性

典型軟件安全過(guò)程模型

軟件安全開(kāi)發(fā)典型實(shí)例

風(fēng)險(xiǎn)評(píng)估控制與軟件安全能力成熟度模型安全需求分析

威脅建模與安全設(shè)計(jì)

安全編碼與代碼安全審核

安全測(cè)試與安全分析軟件與安全軟件安全模型軟件安全工程軟件保護(hù)《軟件安全》在國(guó)內(nèi)外主要面向信息安全、網(wǎng)絡(luò)與空間安全等安全專(zhuān)業(yè)的學(xué)生,且以挖漏洞(安全測(cè)試)為主。從軟件工程的角度,軟件安全應(yīng)覆蓋軟件全生命周期,且面向全體軟件開(kāi)發(fā)人員0.2教學(xué)內(nèi)容軟件與安全軟件安全模型軟件安全工程基礎(chǔ)(如何開(kāi)發(fā)有質(zhì)量的軟件)按軟件安全生命周期模型分章講述(如何開(kāi)發(fā)安全的軟件)應(yīng)用風(fēng)險(xiǎn)管理安全需求工程安全設(shè)計(jì)安全編碼與代碼審核安全測(cè)試軟件保護(hù)與維護(hù)關(guān)于教材《軟件安全理論與實(shí)踐》張仁斌,謝昭,吳克偉.工信部十四五規(guī)劃教材將安全理念、安全模型、安全方法與常見(jiàn)的軟件過(guò)程模型相融合,系統(tǒng)介紹在軟件開(kāi)發(fā)的每個(gè)環(huán)節(jié)保障軟件安全的原理和方法,包括安全需求分析、安全設(shè)計(jì)、安全編碼、安全測(cè)試及軟件部署運(yùn)維中安全配置與軟件加固等各環(huán)節(jié)的流程與常用方法,用于全面指導(dǎo)軟件安全開(kāi)發(fā),樹(shù)立軟件開(kāi)發(fā)人員的安全意識(shí),以期減少或杜絕軟件的安全問(wèn)題,提高軟件的抗攻擊能力和安全可信度參考書(shū)目關(guān)于本課程的教學(xué)方法以一個(gè)課題,貫穿課程始末根據(jù)給的課題或自擬課題,結(jié)合課程進(jìn)展,撰寫(xiě)不同報(bào)告課題為基于Web的某系統(tǒng),基于Web的系統(tǒng)便于安全測(cè)試常規(guī)的需求分析務(wù)必完整、全面(體現(xiàn)周密思考等)重點(diǎn):安全需求分析、安全設(shè)計(jì)、安全測(cè)試課程報(bào)告,實(shí)現(xiàn)安全登錄及1~2個(gè)業(yè)務(wù)功能,并進(jìn)行安全測(cè)試安全編碼實(shí)現(xiàn)與安全測(cè)試,僅針對(duì)用戶(hù)登錄和1~2個(gè)業(yè)務(wù)功能(學(xué)以致用、體驗(yàn)等)結(jié)合知識(shí)點(diǎn),隨堂布置作業(yè)與實(shí)踐任務(wù)促進(jìn)深入了解課程未展開(kāi)細(xì)講的知識(shí)點(diǎn)踐行“講1,學(xué)2,考3”實(shí)現(xiàn)系統(tǒng)的語(yǔ)言、框架不限軟件安全工程化思想、流程,是軟件質(zhì)量與安全的保障必須按流程化的思路制造高質(zhì)量的安全軟件(需求

)概要設(shè)計(jì)詳細(xì)設(shè)計(jì)設(shè)計(jì)實(shí)現(xiàn)簡(jiǎn)單的軟件“簡(jiǎn)化處理”,復(fù)雜的軟件怎么辦?(很多情況下都是“低不就,高不成”)需要多人合作的軟件怎么辦?隔一段時(shí)間再繼續(xù),怎辦?頭腦里的思路還在?必須“按部就班”、文檔化軟件安全工程化思想、流程,是軟件質(zhì)量與安全的保障必須按流程化的思路制造高質(zhì)量的安全軟件應(yīng)用風(fēng)險(xiǎn)管理安全需求工程安全設(shè)計(jì)安全編碼與代碼審核安全測(cè)試軟件保護(hù)與維護(hù)針對(duì)期末課程報(bào)告選題,按要求撰寫(xiě)相關(guān)報(bào)告0.3課程考核(百分制)作業(yè)撰寫(xiě):20%(1)需求分析報(bào)告(摸底)整個(gè)系統(tǒng)的功能清單,擬實(shí)現(xiàn)的1~2個(gè)功能模塊的詳細(xì)需求分析(用例圖、時(shí)序圖等)(2)三選一:①網(wǎng)絡(luò)監(jiān)聽(tīng)與https的配置(低難度);②MD5動(dòng)態(tài)加鹽;③暴力破解密碼實(shí)驗(yàn)分析報(bào)告:30%,三個(gè)實(shí)驗(yàn)(提供范例),單獨(dú)計(jì)分后綜合實(shí)驗(yàn)1:防范SQL注入,或,防范相對(duì)路徑攻擊,或,跨站腳本攻擊實(shí)驗(yàn)2:內(nèi)存安全技術(shù)測(cè)試,或,緩沖區(qū)溢出攻擊實(shí)驗(yàn)3:模糊測(cè)試(高難度),或,基于漏洞掃描工具(例如AWVS)的漏洞掃描課程報(bào)告:40%以安全編碼實(shí)現(xiàn)、安全測(cè)試(漏洞掃描、SQL注入等)為主為了讓報(bào)告完整,應(yīng)將需求、安全需求與安全設(shè)計(jì)報(bào)告納入其中安全需求與安全設(shè)計(jì)(建議隨課程進(jìn)展撰寫(xiě),不要等到期末)

濫用或誤用案例表達(dá)安全需求,基于威脅建模的安全設(shè)計(jì),訪(fǎng)問(wèn)控制矩陣提問(wèn)及討論:10%,課堂提問(wèn)及實(shí)驗(yàn)過(guò)程中提問(wèn)每個(gè)實(shí)驗(yàn),根據(jù)自己的情況,在所列任務(wù)中選做一個(gè)若基于其它課程的報(bào)告,未按此要求清理,導(dǎo)致文檔很長(zhǎng),將扣5~10分杜絕抄襲,抄襲和被抄襲者當(dāng)次作業(yè)的成績(jī)?yōu)?0分或更低文檔的命名與提交(便于錄成績(jī)、材料歸檔)每個(gè)文檔命名必須形如:學(xué)號(hào)-姓名-xxxx.doc,單個(gè)文檔杜絕壓縮,班級(jí)分類(lèi)匯總文檔壓縮打包(一個(gè)班級(jí)一個(gè)壓縮包)用QQ郵箱發(fā)送到hfutZRB@163.com個(gè)人文檔命名示例班級(jí)收集文檔時(shí)文件夾命名示例壓縮包文檔名形如:xx班-作業(yè)1個(gè)人不建此文件夾作業(yè)1:需求分析報(bào)告完成選題結(jié)合期末課程報(bào)告查資料,根據(jù)自己的理解,撰寫(xiě)“需求分析報(bào)告”學(xué)會(huì)查資料以及自學(xué)注意文檔排版要規(guī)范班長(zhǎng)或?qū)W委通過(guò)email提交本班匯總需求分析報(bào)告先修課程已講授需求分析截止日期:2025年3月17日(周二)Pleasecontactwithme張仁斌TEL:139-5695-6705Email:hfutZRB@163.com課程QQ群第1章軟件與軟件安全軟件是硬件和信息系統(tǒng)的靈魂;安全問(wèn)題的主要根源是軟件安全缺陷張仁斌2025.02本章主要內(nèi)容1.1軟件安全范疇1.3安全事件的根源1.2軟件安全現(xiàn)狀1.4解決軟件安全問(wèn)題的途徑與方法1.5作業(yè)與實(shí)踐任務(wù)1.1.1軟件與軟件安全的定義軟件是計(jì)算機(jī)程序、各種相關(guān)數(shù)據(jù)和文檔的集合數(shù)據(jù)文檔程序數(shù)據(jù)文檔數(shù)據(jù)庫(kù)數(shù)據(jù)

配置參數(shù)

日志數(shù)據(jù)編程語(yǔ)言編譯生成

可執(zhí)行腳本

批處理指令需求分析文檔軟件設(shè)計(jì)文檔

使用說(shuō)明書(shū)程序可執(zhí)行部分不可執(zhí)行部分?jǐn)?shù)據(jù)是程序運(yùn)行的基礎(chǔ)和操作對(duì)象;軟件安全包括程序安全和數(shù)據(jù)安全、文檔安全(防篡改、商業(yè)機(jī)密、隱私保護(hù)等)一套熟悉的軟件:QQ首先,它是一套IM程序具有聊天、文件傳輸?shù)裙δ芤惶资煜さ能浖篞Q其次,它有自己的數(shù)據(jù)好友列表配置參數(shù)聊天記錄(日志)等QQ的這些數(shù)據(jù),是如何存儲(chǔ)的?QQ的安全,包括哪些方面?目前是如何保障安全的?一套熟悉的軟件:QQ最后,它有自己的文檔公開(kāi)的各種使用說(shuō)明內(nèi)部交流開(kāi)發(fā)文檔等軟件安全的定義軟件安全(SoftwareSecurity)指采用工程化軟件開(kāi)發(fā)思想使軟件在受到惡意攻擊時(shí)仍然能夠繼續(xù)正確運(yùn)行及確保軟件在授權(quán)范圍內(nèi)合法使用不僅強(qiáng)調(diào)軟件的魯棒性、可靠性,更強(qiáng)調(diào)遭受惡意攻擊時(shí)軟件的自我安全保障,是一種主動(dòng)安全防御軟件安全的目標(biāo)在軟件開(kāi)發(fā)生命周期中實(shí)現(xiàn)所需安全屬性(如何確定所需安全屬性,詳見(jiàn)第2章),構(gòu)造安全的軟件安全的軟件:不存在安全漏洞或能夠抵抗大多數(shù)攻擊、容忍大多數(shù)無(wú)法抵抗的攻擊,并能夠在遭受攻擊時(shí)以最小的損失快速恢復(fù)、按照軟件開(kāi)發(fā)者預(yù)期的方式執(zhí)行的軟件采取措施只能有效減少安全漏洞,但并不能完全杜絕所有的安全漏洞,并且安全是適度安全、可接受的安全處理漏洞的相關(guān)舉措常稱(chēng)作漏洞緩解(Mitigation)或消減措施軟件安全是一種主動(dòng)式安全防御,目標(biāo)是制造安全的軟件1.1.2軟件缺陷與漏洞軟件安全問(wèn)題是軟件自身的缺陷問(wèn)題,其主要在軟件設(shè)計(jì)和實(shí)現(xiàn)的過(guò)程中產(chǎn)生,具體表現(xiàn)為軟件設(shè)計(jì)架構(gòu)和實(shí)現(xiàn)上的錯(cuò)誤需求(軟件需求)設(shè)計(jì)(軟件設(shè)計(jì))實(shí)現(xiàn)(編碼實(shí)現(xiàn))交付使用(交付運(yùn)行)《軟件安全》就是為了避免在最后環(huán)節(jié)才發(fā)現(xiàn)問(wèn)題維修整改(打補(bǔ)?。┸浖毕菖c軟件失效軟件缺陷(Defect),常稱(chēng)作Bug所謂軟件缺陷,即計(jì)算機(jī)軟件中存在的某種破壞正常運(yùn)行能力的問(wèn)題、錯(cuò)誤,或者隱藏的功能缺陷軟件開(kāi)發(fā)過(guò)程中軟件錯(cuò)誤軟件開(kāi)發(fā)人員產(chǎn)生軟件產(chǎn)品中軟件缺陷軟件中存在軟件運(yùn)行中軟件故障缺陷被激活用戶(hù)使用中軟件失效用戶(hù)經(jīng)歷軟件失效機(jī)理軟件缺陷分類(lèi)按錯(cuò)誤的性質(zhì)分類(lèi)(Thayer分類(lèi)法)計(jì)算錯(cuò)誤邏輯錯(cuò)誤I/O錯(cuò)誤數(shù)據(jù)加工錯(cuò)誤軟件缺陷按缺陷引入原因分類(lèi)(Roger分類(lèi)法)不完整或錯(cuò)誤的規(guī)格誤解客戶(hù)需求刻意違背規(guī)格違反編程準(zhǔn)則錯(cuò)誤的數(shù)據(jù)表示組件接口不一致設(shè)計(jì)邏輯錯(cuò)誤不完全或錯(cuò)誤的測(cè)試不準(zhǔn)確或錯(cuò)誤的文檔說(shuō)明編碼錯(cuò)誤重復(fù)錯(cuò)誤操作系統(tǒng)及支持軟件錯(cuò)誤接口錯(cuò)誤全局變量錯(cuò)誤配置錯(cuò)誤文檔錯(cuò)誤預(yù)置數(shù)據(jù)庫(kù)錯(cuò)誤未滿(mǎn)足用戶(hù)需求變更產(chǎn)生的錯(cuò)誤需求一致性錯(cuò)誤性質(zhì)不明錯(cuò)誤人員操作錯(cuò)誤測(cè)試及使用反饋報(bào)告中需答復(fù)的問(wèn)題有歧義或不一致的人機(jī)接口其它軟件漏洞也稱(chēng)作軟件脆弱性(Vulnerability)或軟件弱點(diǎn)(Weakness),是軟件安全漏洞的簡(jiǎn)稱(chēng),在不導(dǎo)致歧義的情況下也簡(jiǎn)稱(chēng)為漏洞每個(gè)漏洞都由至少一個(gè)軟件缺陷引起,但是一個(gè)軟件缺陷也可能不產(chǎn)生任何漏洞,而且不同的軟件缺陷可能導(dǎo)致相同的漏洞數(shù)據(jù)未加密存儲(chǔ)、未加密傳輸與沒(méi)有訪(fǎng)問(wèn)控制,都會(huì)導(dǎo)致信息泄露漏洞漏洞的利用難度隨著相關(guān)攻擊工具的出現(xiàn)而降低,進(jìn)而提升漏洞的可利用性;打補(bǔ)丁降低可用性漏洞在各時(shí)間階段的名稱(chēng)時(shí)間軸漏洞產(chǎn)生漏洞發(fā)現(xiàn)漏洞公開(kāi)補(bǔ)丁發(fā)布漏洞較低存在度漏洞消亡未知漏洞已知漏洞未公開(kāi)漏洞已公開(kāi)漏洞0day漏洞1day漏洞歷史漏洞利用漏洞的攻擊與軟件安全狀態(tài)轉(zhuǎn)移利用漏洞發(fā)動(dòng)攻擊示意圖攻擊事件1攻擊事件2攻擊事件3攻擊目標(biāo)系統(tǒng)組件/子系統(tǒng)漏洞軟件安全狀態(tài)轉(zhuǎn)移圖容忍降級(jí)被攻擊脆弱打補(bǔ)丁淪陷無(wú)漏洞或未發(fā)現(xiàn)漏洞漏洞

被利用抗攻擊機(jī)制生效被控制重啟恢復(fù)或重新配置或完善升級(jí)啟用預(yù)設(shè)安全機(jī)制已知

漏洞未被

利用重啟恢復(fù)或重新配置或完善升級(jí)安全失效1.1.3軟件漏洞分類(lèi)軟件漏洞分類(lèi)的目的從多個(gè)方面描述漏洞,如從漏洞的成因、利用漏洞的技術(shù)、漏洞的作用范圍等國(guó)家標(biāo)準(zhǔn)給出的漏洞分類(lèi)《GB/T30279-2020信息安全技術(shù)網(wǎng)絡(luò)安全漏洞分類(lèi)分級(jí)指南》漏洞分類(lèi)代碼問(wèn)題配置錯(cuò)誤環(huán)境問(wèn)題資源管理錯(cuò)誤輸入驗(yàn)證錯(cuò)誤數(shù)字錯(cuò)誤授權(quán)問(wèn)題數(shù)據(jù)轉(zhuǎn)換問(wèn)題競(jìng)爭(zhēng)條件問(wèn)題緩沖區(qū)錯(cuò)誤注入路徑遍歷跨站請(qǐng)求偽造信任管理問(wèn)題權(quán)限許可和訪(fǎng)問(wèn)控制問(wèn)題格式化字符串錯(cuò)誤跨站腳本命令注入代碼注入SQL注入其它后置鏈接處理邏輯錯(cuò)誤加密問(wèn)題未聲明功能信息泄露故障注入日志信息泄露調(diào)試信息泄露側(cè)信道信息泄露網(wǎng)絡(luò)安全漏洞分類(lèi)導(dǎo)圖通用弱點(diǎn)枚舉CommonWeaknessEnumeration,CWE一個(gè)由社區(qū)開(kāi)發(fā)的軟件和硬件弱點(diǎn)類(lèi)型列表CWE有助于開(kāi)發(fā)人員和安全從業(yè)者達(dá)到以下目的用通用語(yǔ)言描述、討論軟件和硬件的弱點(diǎn)檢查現(xiàn)有軟件和硬件產(chǎn)品中的弱點(diǎn)評(píng)估針對(duì)這些弱點(diǎn)的工具的覆蓋范圍利用常見(jiàn)的基線(xiàn)標(biāo)準(zhǔn)識(shí)別、緩解和預(yù)防漏洞在部署之前防止軟件和硬件漏洞視圖編號(hào)

視圖名稱(chēng)名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))名稱(chēng)-(CWE編號(hào))視圖類(lèi)目組合體鏈支柱類(lèi)基礎(chǔ)變體CWE弱點(diǎn)分類(lèi)層次樹(shù)示意圖699

軟件開(kāi)發(fā)API/函數(shù)錯(cuò)誤-(1228)調(diào)用本質(zhì)危險(xiǎn)的函數(shù)-(242)調(diào)用因版本不同而不一致的函數(shù)-(474)函數(shù)未定義的行為-(475)調(diào)用棄用的函數(shù)-(477)調(diào)用潛在危險(xiǎn)的函數(shù)-(676)調(diào)用底層函數(shù)-(695)暴露危險(xiǎn)方法或函數(shù)-(749)審計(jì)/日志錯(cuò)誤-(1210)日志偽造-(117)安全相關(guān)信息截?cái)?(222)遺漏安全相關(guān)信息-(223)用替代名掩蓋安全相關(guān)信息-(224)在日志文件中寫(xiě)入敏感信息-(532)不足的日志記錄-(778)記錄過(guò)多數(shù)據(jù)-(779)身份驗(yàn)證錯(cuò)誤-(1211)授權(quán)錯(cuò)誤-(1212)糟糕的編碼實(shí)踐-(1006)行為問(wèn)題-(438)業(yè)務(wù)邏輯錯(cuò)誤-(840)通信信道錯(cuò)誤-(417)復(fù)雜問(wèn)題-(1226)并發(fā)問(wèn)題-(557)憑證管理錯(cuò)誤-(255)密碼問(wèn)題-(310)密鑰管理錯(cuò)誤-(320)數(shù)據(jù)完整性問(wèn)題-(1214)數(shù)據(jù)處理錯(cuò)誤-(19)數(shù)據(jù)中性化問(wèn)題-(137)軟件文檔問(wèn)題-(1225)文件處理問(wèn)題-(1219)封裝問(wèn)題-(1227)錯(cuò)誤條件,返回值及狀態(tài)碼-(389)表達(dá)式問(wèn)題-(569)CWE的軟件開(kāi)發(fā)視圖(部分)國(guó)內(nèi)漏洞庫(kù)對(duì)漏洞的分類(lèi)CNNVD漏洞分類(lèi)層次樹(shù)漏洞類(lèi)型配置錯(cuò)誤(CWE-16)代碼問(wèn)題(CWE-17)資料不足資源管理錯(cuò)誤(CWE-399)輸入驗(yàn)證(CWE-20)數(shù)字錯(cuò)誤(CWE-189)信息泄露(CWE-200)安全特征問(wèn)題(CWE-254)競(jìng)爭(zhēng)條件(CWE-362)緩沖區(qū)錯(cuò)誤(CWE-119)注入(CWE-74)路徑遍歷(CWE-22)后置鏈接(CWE-59)授權(quán)問(wèn)題(CWE-287)未充分驗(yàn)證數(shù)據(jù)可靠性(CWE-345)信任管理(CWE-255)權(quán)限許可和訪(fǎng)問(wèn)控制(CWE-264)加密問(wèn)題(CWE-310)跨站請(qǐng)求偽造(CWE-352)訪(fǎng)問(wèn)控制錯(cuò)誤(CWE-284)格式化字符串(CWE-134)命令注入(CWE-77)跨站腳本(CWE-79)代碼注入(CWE-94)SQL注入(CWE-89)操作系統(tǒng)命令注入(CWE-78)知道有哪些漏洞,在軟件開(kāi)發(fā)過(guò)程中才有可能根據(jù)不同軟件安全需求避免相應(yīng)漏洞登錄密碼MD5加JWT,只涉及密碼保護(hù)和訪(fǎng)問(wèn)控制,更多安全問(wèn)題有待解決1.1.4軟件安全與其它安全的關(guān)系密碼學(xué)基礎(chǔ)知識(shí)量子密碼可證明安全密碼體制密碼協(xié)議密碼分析公鑰密碼對(duì)稱(chēng)密碼橢圓曲線(xiàn)計(jì)算代數(shù)應(yīng)用安全技術(shù)知識(shí)隱私保護(hù)工程系統(tǒng)與物聯(lián)網(wǎng)安全垃圾信息識(shí)別與過(guò)濾輿情分析數(shù)據(jù)存儲(chǔ)備份與恢復(fù)數(shù)字版權(quán)保護(hù)取證與追蹤網(wǎng)絡(luò)安全理論與技術(shù)。網(wǎng)絡(luò)安全管理身份認(rèn)證訪(fǎng)問(wèn)控制網(wǎng)絡(luò)攻防與對(duì)抗通信網(wǎng)絡(luò)安全計(jì)算機(jī)網(wǎng)絡(luò)安全系統(tǒng)安全理論與技術(shù)。可信計(jì)算分布式系統(tǒng)安全軟件安全操作系統(tǒng)安全硬件安全芯片安全虛擬化技術(shù)及安全網(wǎng)絡(luò)安全協(xié)議網(wǎng)絡(luò)空間安全基礎(chǔ)理論電子與電路復(fù)雜網(wǎng)絡(luò)理論博弈理論網(wǎng)絡(luò)空間安全導(dǎo)論數(shù)論圖論信息論網(wǎng)絡(luò)空間安全管理與法律法規(guī)控制論算法與計(jì)算復(fù)雜性大數(shù)據(jù)分析方法軟件安全與網(wǎng)絡(luò)空間安全1.1.4軟件安全與其它安全的關(guān)系軟件一般分為系統(tǒng)軟件和應(yīng)用軟件兩大類(lèi)系統(tǒng)軟件指管理、監(jiān)控和維護(hù)計(jì)算機(jī)資源(包括硬件和軟件)的軟件。包括操作系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)等應(yīng)用軟件指用戶(hù)利用計(jì)算機(jī)及其提供的系統(tǒng)軟件為解決各種實(shí)際問(wèn)題而編制的計(jì)算機(jī)程序。包括辦公軟件、電子商務(wù)軟件、字處理軟件和圖形處理軟件等軟件安全涉及操作系統(tǒng)安全(系統(tǒng)軟件安全)、信息系統(tǒng)安全、主機(jī)安全、網(wǎng)絡(luò)設(shè)備安全、移動(dòng)終端安全硬件安全數(shù)據(jù)安全系統(tǒng)安全網(wǎng)絡(luò)安全軟件安全WindowsMacOSUnix/LinuxCiscoIOSH3CComwareVyattaHarmonyOSAppleiOSAndroidBlackBerryOSSymbian軟件安全與相關(guān)安全領(lǐng)域軟件安全與硬件安全硬件安全包括硬件設(shè)計(jì)安全和固件(Firmware)安全硬件設(shè)計(jì)安全包括集成電路安全、硬中斷安全、硬件邏輯安全等固件是指固化在只讀存儲(chǔ)器、可擦寫(xiě)可編程只讀存儲(chǔ)器或電可擦可編程只讀存儲(chǔ)器等存儲(chǔ)器中、停電也不會(huì)丟失的程序,例如,洗衣機(jī)等嵌入式系統(tǒng)中的控制程序、各種板卡中的BIOS等都是固件固件安全屬于軟件安全范疇軟件是硬件的靈魂,硬件安全與軟件安全彼此交融硬件功能與作用的發(fā)揮,甚至硬件性能的提升,常依托于軟件2017年,IntelCPU熔斷(Meltdown)和幽靈(Spectre)漏洞可導(dǎo)致計(jì)算機(jī)內(nèi)核安全數(shù)據(jù)泄露MeltdownSpectre軟件安全與數(shù)據(jù)安全數(shù)據(jù)是軟件的構(gòu)成要素、程序的操作對(duì)象配置文件中的參數(shù)型數(shù)據(jù)直接影響程序的執(zhí)行,或?qū)е鲁绦蚍欠▓?zhí)行軟件安全是數(shù)據(jù)安全的基石數(shù)據(jù)存儲(chǔ)安全數(shù)據(jù)處理安全數(shù)據(jù)采集安全數(shù)據(jù)傳輸安全數(shù)據(jù)分類(lèi)分級(jí)數(shù)據(jù)采集安全管理數(shù)據(jù)源鑒別與記錄數(shù)據(jù)質(zhì)量管理數(shù)據(jù)傳輸加密網(wǎng)絡(luò)可用性管理存儲(chǔ)媒體安全邏輯存儲(chǔ)安全數(shù)據(jù)備份和恢復(fù)數(shù)據(jù)脫敏數(shù)據(jù)分析安全數(shù)據(jù)正當(dāng)使用數(shù)據(jù)處理環(huán)境安全數(shù)據(jù)導(dǎo)入導(dǎo)出安全數(shù)據(jù)交換安全數(shù)據(jù)銷(xiāo)毀安全數(shù)據(jù)共享安全數(shù)據(jù)發(fā)布安全數(shù)據(jù)接口安全數(shù)據(jù)銷(xiāo)毀處置存儲(chǔ)媒體銷(xiāo)毀處置數(shù)據(jù)全生命周期安全防護(hù)軟件安全與網(wǎng)絡(luò)安全針對(duì)路由器、防火墻、入侵檢測(cè)系統(tǒng)等網(wǎng)絡(luò)設(shè)備的攻擊,主要針對(duì)設(shè)備中的操作系統(tǒng)或配置管理系統(tǒng)等軟件發(fā)動(dòng)的攻擊網(wǎng)絡(luò)攻擊除了利用網(wǎng)絡(luò)中各種系統(tǒng)軟件、應(yīng)用軟件的漏洞,也利用網(wǎng)絡(luò)協(xié)議漏洞(實(shí)現(xiàn)協(xié)議的軟件的漏洞)2014年4月,OpeonSSL出現(xiàn)“Heartbleed(心臟出血)”

漏洞網(wǎng)絡(luò)模型安全威脅安全措施OSI/RMTCP/IP應(yīng)用層應(yīng)用層利用操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議上的漏洞進(jìn)行各種攻擊加強(qiáng)安全服務(wù),如安全協(xié)議、檢測(cè)、加密等表示層會(huì)話(huà)層傳輸層傳輸層身份假冒、權(quán)限濫用、IP和TCP欺騙、路由偵聽(tīng)、重定向等實(shí)施安全控制技術(shù),如身份認(rèn)證、審計(jì)、網(wǎng)絡(luò)管理等網(wǎng)絡(luò)層網(wǎng)際層數(shù)據(jù)鏈路層網(wǎng)絡(luò)接口層自然災(zāi)害、電磁輻射、數(shù)據(jù)監(jiān)聽(tīng)、竊取、刪除等物理安全技術(shù),如容災(zāi)、屏蔽、監(jiān)控等物理層網(wǎng)絡(luò)模型不同層的安全威脅與安全措施軟件安全與系統(tǒng)安全信息系統(tǒng)是基于一系列相互協(xié)作的軟硬件構(gòu)建而成的軟件是信息技術(shù)(InformationTechnology,IT)的靈魂信息系統(tǒng)的構(gòu)成體現(xiàn)出信息系統(tǒng)一般包含多個(gè)不同種類(lèi)的軟件,信息系統(tǒng)業(yè)務(wù)的多樣性由軟件類(lèi)別、功能的多樣性支撐,信息系統(tǒng)中硬件的智能化也主要依托軟件賦能信息系統(tǒng)絕大多數(shù)安全漏洞是軟件安全漏洞2021年3月,英國(guó)數(shù)據(jù)分析公司Polecat的一臺(tái)未加密服務(wù)器暴露了大約30TB的數(shù)據(jù),其中包括120億條與社交媒體相關(guān)的記錄曝光的數(shù)據(jù)包括推文內(nèi)容、推文ID、作者用戶(hù)名、瀏覽/跟帖人數(shù)、帖子內(nèi)容、URL、收獲時(shí)間、發(fā)布者、地區(qū)和帖子標(biāo)題安全概念、人員角色及其關(guān)系攻擊者利用漏洞實(shí)施攻擊,是各種網(wǎng)絡(luò)安全事件的主要根源,而安全漏洞的主要根源是軟件中的安全缺陷程序員源代碼軟件組件程序計(jì)算機(jī)系統(tǒng)安全策略計(jì)算機(jī)網(wǎng)絡(luò)漏洞利用程序緩解措施安全缺陷組成組成組成組成應(yīng)用于可能導(dǎo)致系統(tǒng)集成人員系統(tǒng)管理員網(wǎng)絡(luò)管理員安全分析師安全研究人員攻擊者漏洞分析師可能具有可能具有可能包含被解決可能包含可能包含被攻擊被解決本章主要內(nèi)容1.1軟件安全范疇1.3安全事件的根源1.2軟件安全現(xiàn)狀1.4解決軟件安全問(wèn)題的途徑與方法1.5作業(yè)與實(shí)踐任務(wù)1.2.1軟件安全現(xiàn)狀總體情況軟件漏洞數(shù)量年度趨勢(shì)(來(lái)源:CNVD,2022.03.06查詢(xún))根據(jù)漏洞影響對(duì)象的漏洞分布情況1.2.1軟件安全現(xiàn)狀總體情況序號(hào)漏洞類(lèi)型漏洞數(shù)量(個(gè))所占比例1緩沖區(qū)錯(cuò)誤24012.91%2跨站腳本21011.30%3輸入驗(yàn)證錯(cuò)誤1236.62%4代碼問(wèn)題1115.97%5資源管理錯(cuò)誤844.52%6SQL注入743.98%7訪(fǎng)問(wèn)控制錯(cuò)誤633.39%8信息泄露603.23%9命令注入542.90%10跨站請(qǐng)求偽造522.80%CNNVD按類(lèi)型統(tǒng)計(jì)2022年2月新增漏洞TOP10序號(hào)廠(chǎng)商名稱(chēng)漏洞數(shù)量(個(gè))所占比例1WordPress基金會(huì)1658.88%2Google1256.72%3Intel754.03%4Tenda552.96%5Microsoft512.74%6Git301.61%7JetBrains291.56%8Siemens271.45%9D-Link261.40%10Cisco251.34%廠(chǎng)商系列軟件2022年2月新增漏洞數(shù)量TOP101.2.2系統(tǒng)軟件安全現(xiàn)狀數(shù)據(jù)來(lái)源:CNNVD官網(wǎng)2022年2月信息安全漏洞通報(bào)序號(hào)操作系統(tǒng)名稱(chēng)漏洞數(shù)(個(gè))1Android252Windows11223Windows10214WindowsServer2022215WindowsServer2019206WindowsServer2016167WindowsServer2012138WindowsServer2012R2139Windows8.11310WindowsRt8.113主流操作系統(tǒng)2022年2月新增漏洞數(shù)量TOP10Windows10操作系統(tǒng)漏洞統(tǒng)計(jì)結(jié)果(來(lái)源:CNNVD,2022.03.06查詢(xún))1.2.3應(yīng)用軟件安全現(xiàn)狀產(chǎn)品廠(chǎng)商漏洞數(shù)量(個(gè))Chromegoogle1171Firefoxmozilla1069Acrobatadobe532Thunderbirdmozilla530Seamonkeymozilla518Acrobat_readeradobe506Acrobat_dcadobe498Acrobat_reader_dcadobe498Internet_explorermicrosoft406Wiresharkwireshark399瀏覽器廠(chǎng)商漏洞數(shù)量(個(gè))Chromegoogle1171Firefoxmozilla1069Internet_explorermicrosoft406Safariapple398Firefox_esrmozilla261應(yīng)用軟件漏洞數(shù)量TOP10(來(lái)源:CNNVD,2022.03.06查詢(xún))瀏覽器漏洞數(shù)量TOP5(來(lái)源:CNNVD,2022.03.06查詢(xún))瀏覽器Chrome漏洞統(tǒng)計(jì)(來(lái)源:CNNVD,2020.02.13查詢(xún))1.2.4開(kāi)源軟件安全現(xiàn)狀從2015年初到2017年初兩年多時(shí)間中360代碼衛(wèi)士團(tuán)隊(duì)從GitHub、Sourceforge等代碼托管網(wǎng)站和開(kāi)源社區(qū)中選取了2228個(gè)使用比較廣泛的開(kāi)源項(xiàng)目進(jìn)行檢測(cè),涉及的開(kāi)發(fā)語(yǔ)言包括C、C++、C#、Java等,檢測(cè)代碼總量257,835,574行,發(fā)現(xiàn)源代碼漏洞2,626,352個(gè),所有檢測(cè)項(xiàng)目的總體平均漏洞密度為10.19個(gè)/千行開(kāi)源項(xiàng)目漏洞數(shù)量TOP10漏洞類(lèi)別漏洞總數(shù)(個(gè))系統(tǒng)信息泄露180943密碼管理30746資源注入16919跨站請(qǐng)求偽造16349跨站腳本9614HTTP消息頭注入4891SQL注入4069越界訪(fǎng)問(wèn)2728命令注入1913內(nèi)存泄露681十類(lèi)重要漏洞檢出結(jié)果統(tǒng)計(jì)最流行開(kāi)源項(xiàng)目漏洞情況根據(jù)項(xiàng)目Fork值、下載量等指標(biāo),選取20個(gè)最流行開(kāi)源項(xiàng)目最流行開(kāi)源項(xiàng)目的漏洞數(shù)量(個(gè))最流行開(kāi)源項(xiàng)目十類(lèi)重要漏洞的數(shù)量(個(gè))最流行開(kāi)源項(xiàng)目的漏洞密度(單位:個(gè)/千行)本章主要內(nèi)容1.1軟件安全范疇1.3安全事件的根源1.2軟件安全現(xiàn)狀1.4解決軟件安全問(wèn)題的途徑與方法1.5作業(yè)與實(shí)踐任務(wù)1.3.1軟件漏洞是安全問(wèn)題的焦點(diǎn)傳統(tǒng)的安全措施,絕大多數(shù)是“堵”利用安全系統(tǒng)檢測(cè)、防范、阻止安全事件的發(fā)生與漫延,并沒(méi)有從根源上杜絕安全隱患三分技術(shù),七分管理用技術(shù)提升管理水平、彌補(bǔ)管理漏洞,并從根源上消除安全隱患典型分區(qū)分域安全防御模式示意④縱向認(rèn)證③橫向隔離信息區(qū)生產(chǎn)控制區(qū)管理信息區(qū)防火墻①安全分區(qū)②網(wǎng)絡(luò)專(zhuān)用生產(chǎn)區(qū)管理區(qū)電力調(diào)度數(shù)據(jù)網(wǎng)SPDnet電力數(shù)據(jù)網(wǎng)或發(fā)電數(shù)據(jù)網(wǎng)控制區(qū)電力二次系統(tǒng)的分區(qū)分域防御烏克蘭電力系統(tǒng)兩次遭受攻擊,導(dǎo)致大面積停電Web服務(wù)器應(yīng)用服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器Internet只允許通過(guò)80端口或443端口訪(fǎng)問(wèn)Web服務(wù)器只允許Web服務(wù)器上的應(yīng)用程序與應(yīng)用服務(wù)器通信只允許應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)服務(wù)器通信一般信息系統(tǒng)基于防火墻的層次化縱深防御APT攻擊可導(dǎo)致整個(gè)系統(tǒng)癱瘓!2013年3月20日,韓國(guó)三家電視臺(tái)和六家金融公司的計(jì)算機(jī)網(wǎng)絡(luò)全面癱瘓ATM提款機(jī)停止服務(wù)使用已知的惡意軟件“DarkSeoul”;利用已知的IE漏洞“CVE-2012-1889”病毒傳播,黑客攻擊…主要基于網(wǎng)絡(luò),因此,一直認(rèn)為網(wǎng)絡(luò)安全是計(jì)算機(jī)安全的主要問(wèn)題。但是在網(wǎng)絡(luò)安全上的巨大投入?yún)s沒(méi)有從根本上解決安全問(wèn)題安全事件頻繁爆發(fā)的原因,主要包括以下幾個(gè)方面新技術(shù)的應(yīng)用,增加了安全的復(fù)雜性、挑戰(zhàn)性例如:大數(shù)據(jù)、人工智能技術(shù)的應(yīng)用對(duì)隱私安全保護(hù)構(gòu)成了挑戰(zhàn)無(wú)處不在的軟件及其漏洞系統(tǒng)自身的缺陷、復(fù)雜性、開(kāi)放性與傳統(tǒng)安全技術(shù)的不足問(wèn)題究竟出在哪?加密技術(shù)的廣泛使用,對(duì)安全防御也有一定的削弱OperatingSystemKnownVulnerabilities-MisconfigurationsNetworkLayerExposedHosts–InsecureProtocolsWebApplicationAttacksOSAttacksNetworkAttacksKnownWebServerAttacksWebApplicationCode-Content-ImplementationWebServerKnownVulnerabilities-Misconfigurations數(shù)據(jù)庫(kù)發(fā)布系統(tǒng)財(cái)務(wù)系統(tǒng)定制開(kāi)發(fā)的代碼應(yīng)用層攻擊者防火墻已加固的操作系統(tǒng)Web服務(wù)器應(yīng)用服務(wù)器防火墻網(wǎng)絡(luò)層主機(jī)層網(wǎng)絡(luò)層防火墻不能為應(yīng)用層提供防護(hù)工作在網(wǎng)絡(luò)層的防火墻、入侵檢測(cè)、主機(jī)安全加固可以有效防御針對(duì)主機(jī)和網(wǎng)絡(luò)的攻擊,但是對(duì)應(yīng)用層卻幾乎束手無(wú)策,使Web應(yīng)用防火墻成為必須系統(tǒng)的復(fù)雜性、開(kāi)放性增大攻擊面黑客攻擊方式的演化黑客攻擊方式從早期單純的社會(huì)工程、簡(jiǎn)單的電子郵箱炸彈,逐步演化為直接針對(duì)應(yīng)用軟件的攻擊或業(yè)務(wù)邏輯滲透攻擊工具越來(lái)越集成化、智能化,發(fā)動(dòng)攻擊的門(mén)檻越來(lái)越低攻擊的產(chǎn)業(yè)化、勒索軟件即服務(wù)(RansomwareasaService,RaaS)的出現(xiàn),加劇了安全事件的發(fā)生2015年,烏克蘭電力系統(tǒng)遭BlackEnergy等惡意代碼“網(wǎng)絡(luò)協(xié)同”攻擊軟件漏洞成為安全問(wèn)題的焦點(diǎn)安全問(wèn)題主要源于軟件漏洞,絕大多數(shù)網(wǎng)絡(luò)攻擊,都是利用一個(gè)或多個(gè)軟件漏洞發(fā)動(dòng)的一個(gè)軟件漏洞的出現(xiàn)可能導(dǎo)致數(shù)十種攻擊手段的產(chǎn)生,進(jìn)而引起成千上萬(wàn)次的攻擊行為防火墻等外在手段無(wú)法徹底解決軟件內(nèi)在的安全漏洞,只能創(chuàng)造相對(duì)安全的運(yùn)行環(huán)境安全設(shè)備或殺毒軟件本身可能存在安全漏洞利用思科ASA防火墻的漏洞CVE-2016-6366獲取思科ASA防火墻設(shè)備的完整控制權(quán)軟件自身的安全漏洞,會(huì)被用來(lái)攻擊其它軟件,包括保護(hù)它的安全系統(tǒng)根據(jù)漏洞影響對(duì)象的漏洞分布情況1.3.2產(chǎn)生軟件漏洞的原因軟件的安全問(wèn)題是軟件自身的缺陷問(wèn)題在軟件設(shè)計(jì)、實(shí)現(xiàn)和應(yīng)用與維護(hù)的過(guò)程中產(chǎn)生,具體表現(xiàn)為軟件設(shè)計(jì)架構(gòu)、實(shí)現(xiàn)和配置上的錯(cuò)誤內(nèi)因軟件自身存在安全漏洞軟件安全問(wèn)題外因軟件運(yùn)行面臨安全威脅利用各種漏洞進(jìn)行攻擊,已由早期的安全研究、興趣愛(ài)好,演變?yōu)榻?jīng)濟(jì)獲利、政治干擾、軍事打擊的手段之一,刺激了漏洞挖掘與漏洞利用,任何軟件缺陷都有可能被惡意利用內(nèi)因(概述)軟件開(kāi)發(fā)安全意識(shí)淡薄,軟件設(shè)計(jì)時(shí)缺乏安全設(shè)計(jì)缺乏對(duì)安全威脅的認(rèn)識(shí),常因軟件開(kāi)發(fā)周期短、工作量大等原因而忽視安全,重視功能而不是安全性軟件開(kāi)發(fā)缺乏安全知識(shí)和安全問(wèn)題解決方案,對(duì)需保護(hù)的目標(biāo)知之甚少,尤其是編程人員缺乏安全編程經(jīng)驗(yàn)、安全測(cè)試經(jīng)驗(yàn)軟件趨向大型化和復(fù)雜化,軟件越復(fù)雜,缺陷越難避免軟件第三方擴(kuò)展增多,軟件模塊復(fù)用、可擴(kuò)展性、靈活性要求越來(lái)越多運(yùn)行于各種終端/平臺(tái)的軟件系統(tǒng)或其子系統(tǒng)的互聯(lián),給予攻擊者更多的攻擊機(jī)會(huì)缺乏相應(yīng)的技術(shù)和工具幫助開(kāi)發(fā)人員開(kāi)發(fā)安全的軟件,甚至難以可靠地確定開(kāi)發(fā)人員開(kāi)發(fā)的軟件是否安全軟件開(kāi)發(fā)階段漏洞起因分析階段缺乏風(fēng)險(xiǎn)分析偏頗的風(fēng)險(xiǎn)分析未預(yù)見(jiàn)的風(fēng)險(xiǎn)設(shè)計(jì)階段依賴(lài)不安全的抽象層安全性與易用性或功能的折中缺少日志記錄殘留風(fēng)險(xiǎn)實(shí)現(xiàn)階段沒(méi)有檢查輸入?yún)?shù)非原子檢查訪(fǎng)問(wèn)控制驗(yàn)證不安全的異常處理部署階段軟件的重用復(fù)雜的或不必要的配置默認(rèn)配置的安全性維護(hù)階段特征沖突向后兼容性?xún)?nèi)因:軟件開(kāi)發(fā)的每個(gè)環(huán)節(jié)都會(huì)引入缺陷內(nèi)因:缺少必要的安全需求分析軟件開(kāi)發(fā),為了實(shí)現(xiàn)業(yè)務(wù)功能而實(shí)現(xiàn)業(yè)務(wù)功能2011年12月,CSDN遭黑客攻擊,致用戶(hù)賬號(hào)密碼泄露,人人網(wǎng)等網(wǎng)站用戶(hù)紛紛修改密碼表面上是用戶(hù)不具有安全意識(shí),在不同網(wǎng)站使用同一套賬號(hào)密碼,實(shí)則是被拖庫(kù)系統(tǒng)沒(méi)有進(jìn)行必要的安全需求分析,“沒(méi)有想到”可能會(huì)被拖庫(kù)需求分析解決“做什么”;缺少安全需求分析,則根本就沒(méi)意識(shí)到威脅的存在內(nèi)因:登錄信息未經(jīng)安全處理②①③內(nèi)因:缺少防范自動(dòng)登錄使用未經(jīng)安全處理的cookie信息缺陷編號(hào):WooYun-2013-34846簡(jiǎn)要描述:非凡軟件下載設(shè)計(jì)缺陷,可登錄其他任意注冊(cè)用戶(hù)烏云網(wǎng)站公布的相關(guān)攻擊過(guò)程工具軟件:BurpSuiteBurpSuite是Web應(yīng)用程序測(cè)試的最佳工具之一,其多種功能可以幫我們執(zhí)行各種任務(wù):請(qǐng)求的攔截和修改,掃描Web應(yīng)用程序漏洞,以暴力破解登錄表單,執(zhí)行會(huì)話(huà)令牌等多種的隨機(jī)性檢查在介紹攻擊案例前,啟動(dòng)BurpSuite,簡(jiǎn)介其入門(mén)知識(shí)Proxy設(shè)置IE代理設(shè)置演示BurpSuite攔截與轉(zhuǎn)發(fā)①正常登陸,然后刷新一下頁(yè)面,點(diǎn)擊修改資料,這時(shí)設(shè)代理、抓包、查看Cookie②Cookie中有ID和UserName兩個(gè)參數(shù),把這兩個(gè)參數(shù)改成其他用戶(hù)的信息:ID=7994&UserName=wooyun③然后發(fā)送請(qǐng)求,看頁(yè)面響應(yīng),即用cookie中其它用戶(hù)的身份登陸了系統(tǒng),也就是只要改變cookie中的ID和對(duì)應(yīng)的UserName就可以登錄相應(yīng)的用戶(hù)④通過(guò)注冊(cè)新用戶(hù)等方式,得知某用戶(hù)名為tester⑤然后把Cookie中的信息設(shè)置成:ID=1111&UserName=tester,開(kāi)始爆破ID⑥從響應(yīng)狀態(tài)、響應(yīng)內(nèi)容長(zhǎng)度、響應(yīng)內(nèi)容等可以看出爆破出來(lái)的用戶(hù)tester的ID⑦用獲取的用戶(hù)名和ID修改cookie并登錄內(nèi)因:輸入數(shù)據(jù)缺少驗(yàn)證對(duì)輸入信息,尤其是關(guān)鍵數(shù)據(jù),進(jìn)行有效性驗(yàn)證或安全驗(yàn)證,是一個(gè)基本安全需求,但往往被忽略,進(jìn)而引發(fā)安全問(wèn)題例如,Metabase信息泄露漏洞CVE-2021-41277受影響的版本低于0.40.5和低于1.40.5的版本(0.40.5和1.40.5已消除此漏洞)安裝環(huán)境dockerrun-d-p3000:3000--namemetabasemetabase/metabase:v0.40.4測(cè)試是否安裝成功:3000/setup漏洞測(cè)試:3000/api/geojson?url=file:/etc/passwd內(nèi)因:架構(gòu)設(shè)計(jì)的缺陷MicrosoftBob是作為WindowsME和Windows98的輔助程序而設(shè)計(jì)的,其中包含一個(gè)設(shè)置系統(tǒng)密碼的工具當(dāng)用戶(hù)輸入密碼錯(cuò)誤三次時(shí),Bob將彈出如下的信息:“我想你忘記了你的密碼,請(qǐng)輸入一個(gè)新的密碼。”然后允許用戶(hù)無(wú)需任何身份驗(yàn)證即可設(shè)置新的密碼架構(gòu)設(shè)計(jì)解決“如何做”;不合理的方式方法、策略規(guī)劃,無(wú)論如何具體實(shí)現(xiàn),都將存在問(wèn)題內(nèi)因:架構(gòu)設(shè)計(jì)的缺陷runC符號(hào)鏈接掛載與容器逃逸漏洞CVE-2021-30465runC是一個(gè)通用的標(biāo)準(zhǔn)化容器(Container)運(yùn)行環(huán)境,實(shí)現(xiàn)了容器啟停、資源隔離等功能,被廣泛應(yīng)用于Kubernets(K8S)等各種虛擬化環(huán)境中宿主機(jī)根目錄容器A容器BPOD①啟動(dòng)容器A并創(chuàng)建符號(hào)鏈接(symlink)ln-s//test2/test2軟鏈根目錄到容器的/test2/test2②觸發(fā)條件競(jìng)爭(zhēng)TOCTTOU③啟動(dòng)容器B④查看是否逃逸內(nèi)因:架構(gòu)設(shè)計(jì)的缺陷ApacheAPISIXDashboard未授權(quán)訪(fǎng)問(wèn)漏洞CVE-2021-45232APISIX是一個(gè)云原生、高性能、可擴(kuò)展的微服務(wù)API網(wǎng)關(guān)ManagerAPI在輕量級(jí)Web框架gin的基礎(chǔ)上引入droplet框架所有的API和鑒權(quán)中間件都應(yīng)基于droplet框架開(kāi)發(fā),但有部分API直接使用了框架gin的接口,從而繞過(guò)身份驗(yàn)證gindropletAPI和鑒權(quán)中間件API繞過(guò)身份驗(yàn)證登錄憑據(jù)驗(yàn)證存在邏輯錯(cuò)誤AppleMacOS權(quán)限提升/繞過(guò)漏洞CVE-2017-13872,導(dǎo)致MacOSHighSierra系統(tǒng)無(wú)密碼即可登錄管理員賬戶(hù)內(nèi)因:編碼缺陷漏洞類(lèi)型配置錯(cuò)誤(CWE-16)代碼問(wèn)題(CWE-17)資料不足資源管理錯(cuò)誤(CWE-399)輸入驗(yàn)證(CWE-20)數(shù)字錯(cuò)誤(CWE-189)信息泄露(CWE-200)安全特征問(wèn)題(CWE-254)競(jìng)爭(zhēng)條件(CWE-362)緩沖區(qū)錯(cuò)誤(CWE-119)注入(CWE-74)路徑遍歷(CWE-22)后置鏈接(CWE-59)授權(quán)問(wèn)題(CWE-287)未充分驗(yàn)證數(shù)據(jù)可靠性(CWE-345)信任管理(CWE-255)權(quán)限許可和訪(fǎng)問(wèn)控制(CWE-264)加密問(wèn)題(CWE-310)跨站請(qǐng)求偽造(CWE-352)訪(fǎng)問(wèn)控制錯(cuò)誤(CWE-284)格式化字符串(CWE-134)命令注入(CWE-77)跨站腳本(CWE-79)代碼注入(CWE-94)SQL注入(CWE-89)操作系統(tǒng)命令注入(CWE-78)CNNVD漏洞分類(lèi)層次樹(shù)內(nèi)因:編碼缺陷漏洞分類(lèi)代碼問(wèn)題配置錯(cuò)誤環(huán)境問(wèn)題資源管理錯(cuò)誤輸入驗(yàn)證錯(cuò)誤數(shù)字錯(cuò)誤授權(quán)問(wèn)題數(shù)據(jù)轉(zhuǎn)換問(wèn)題競(jìng)爭(zhēng)條件問(wèn)題緩沖區(qū)錯(cuò)誤注入路徑遍歷跨站請(qǐng)求偽造信任管理問(wèn)題權(quán)限許可和訪(fǎng)問(wèn)控制問(wèn)題格式化字符串錯(cuò)誤跨站腳本命令注入代碼注入SQL注入其它后置鏈接處理邏輯錯(cuò)誤加密問(wèn)題未聲明功能信息泄露故障注入日志信息泄露調(diào)試信息泄露側(cè)信道信息泄露國(guó)家標(biāo)準(zhǔn)網(wǎng)絡(luò)安全漏洞分類(lèi)導(dǎo)圖編碼是“具體做”;編碼缺陷是軟件實(shí)現(xiàn)過(guò)程中引入的安全問(wèn)題內(nèi)因:編碼缺陷火狐瀏覽器內(nèi)核(Mozilla核心)URL編碼缺陷(1)IE顯示3個(gè)超級(jí)鏈接;(2)火狐顯示為空白,因其將右圖紅色框選內(nèi)容當(dāng)做注釋?zhuān)瑒h掉綠色框選部分即可顯示3超級(jí)鏈接內(nèi)因:編碼缺陷(續(xù))MicrosoftIE6.0無(wú)法正確處理HTTP編碼IE6.0對(duì)以HTTP編碼的'/'字符(2F=hex$(asc('/')))解析不正確,攻擊者可以構(gòu)建類(lèi)似如下的URL:2F@clik.to>/liudieyu"target="_blank">%2F@clik.to/liudieyuIE的URL解析器解析到'%2F'字符的時(shí)候會(huì)錯(cuò)誤的判斷為域名結(jié)束,而沒(méi)有考慮字符'%2F'是否屬于用戶(hù)名/密碼字段,結(jié)果造成HTTP用戶(hù)名""匹配為子窗口域(window.open("")),并授權(quán)訪(fǎng)問(wèn)內(nèi)因:編碼缺陷(續(xù))計(jì)算精度處理導(dǎo)致問(wèn)題在海灣戰(zhàn)爭(zhēng)期間,“愛(ài)國(guó)者”防空系統(tǒng)有一次未能成功攔截“飛毛腿”導(dǎo)彈,造成軍營(yíng)被炸,28名英軍死亡,其原因是其跟蹤軟件在運(yùn)行100小時(shí)后出現(xiàn)了一個(gè)0.36秒的舍入誤差容錯(cuò)性太差我國(guó)第一架先進(jìn)的ACT(主動(dòng)控制技術(shù))試驗(yàn)機(jī),在試飛中已成功地飛行了幾十次,后來(lái)?yè)Q了一個(gè)試飛員,該試飛員第一次飛這架飛機(jī),拉桿過(guò)猛,由于該架飛機(jī)是計(jì)算機(jī)控制電傳操縱,使軟件產(chǎn)生溢出錯(cuò)誤,造成舵面鎖住,飛機(jī)無(wú)法操縱而墜機(jī)內(nèi)因:編碼缺陷(續(xù))2001年的紅色代碼(CodeRed)蠕蟲(chóng)利用Microsoft的IISWeb服務(wù)器的軟件缺陷字符串變量是Unicode字符類(lèi)型的(每個(gè)字符占用兩個(gè)字節(jié)),在計(jì)算緩沖區(qū)大小的時(shí)候偏移量應(yīng)該是2,但I(xiàn)IS卻錯(cuò)誤地按照偏移量為1計(jì)算緩沖區(qū)大小導(dǎo)致在14個(gè)小時(shí)內(nèi),就有359000臺(tái)機(jī)器感染了紅色代碼蠕蟲(chóng)內(nèi)因:調(diào)試、測(cè)試存在不足安全測(cè)試方法不當(dāng)或用例不合適,測(cè)試輔助工具軟件存在局限性,安全測(cè)試不到位,測(cè)試主要集中于業(yè)務(wù)功能測(cè)試,等等,都有可能導(dǎo)致軟件在發(fā)布之前未能發(fā)現(xiàn)存在的漏洞調(diào)試過(guò)程中“插入”的便于調(diào)試的語(yǔ)句,遺留在發(fā)行版程序中,將為攻擊者提供便利未清理JavaScript中的僅用于調(diào)試的console.log()、()、alert等語(yǔ)句甚至注釋信息,導(dǎo)致敏感信息泄露或?yàn)楣粽邔?shí)施攻擊提供有用信息發(fā)行版程序未清理專(zhuān)門(mén)為調(diào)試、測(cè)試設(shè)計(jì)的“后門(mén)”而引入風(fēng)險(xiǎn)內(nèi)因:安全部署、安全配置不合理系統(tǒng)軟件和應(yīng)用軟件都存在安全部署、安全配置不合適導(dǎo)致的安全問(wèn)題操作系統(tǒng)沒(méi)有禁用guest賬號(hào)、沒(méi)有關(guān)閉不必要的服務(wù)、沒(méi)有關(guān)閉不必要的端口、沒(méi)有開(kāi)啟審核策略等安裝部署軟件時(shí),若沒(méi)修改默認(rèn)配置,常導(dǎo)致安全問(wèn)題ApacheAPISIXAdminAPI默認(rèn)Token漏洞CVE-2020-13945。當(dāng)使用者開(kāi)啟了AdminAPI,沒(méi)有配置相應(yīng)的IP訪(fǎng)問(wèn)策略,且沒(méi)有修改配置文件Token的情況下,則攻擊者可以利用ApacheAPISIX的默認(rèn)Token訪(fǎng)問(wèn)并控制ApacheAPISIX內(nèi)因:安全部署、安全配置不合理低版本Apachehttpd默認(rèn)配置允許瀏覽目錄,當(dāng)客戶(hù)端訪(fǎng)問(wèn)到一個(gè)目錄時(shí),如果該目錄下沒(méi)有索引文件,則會(huì)列出該目錄下所有文件,導(dǎo)致文件信息泄漏內(nèi)因:安全部署、安全配置不合理移動(dòng)應(yīng)用錯(cuò)誤配置或不安全配置是導(dǎo)致移動(dòng)設(shè)備隱私泄漏的主要原因之一Firebase是一個(gè)移動(dòng)應(yīng)用開(kāi)發(fā)平臺(tái),用于身份驗(yàn)證、托管、云存儲(chǔ)、分析、消息傳遞等2020年,由于Firebase存在配置錯(cuò)誤,導(dǎo)致近2.4萬(wàn)個(gè)Android應(yīng)用程序發(fā)生數(shù)據(jù)泄露,泄露信息包括用戶(hù)名、電子郵件地址、賬號(hào)密碼、聊天記錄、GPS數(shù)據(jù)、IP地址、街道地址等本章主要內(nèi)容1.1軟件安全范疇1.3安全事件的根源1.2軟件安全現(xiàn)狀1.4解決軟件安全問(wèn)題的途徑與方法1.5作業(yè)與實(shí)踐任務(wù)1.4.1解決軟件安全問(wèn)題的基本策略傳統(tǒng)的軟件安全思想的體現(xiàn)形式用防火墻等安全設(shè)備定義系統(tǒng)的“邊界”,把軟件與外界隔離過(guò)度依賴(lài)SSL、IPSec等加密技術(shù)軟件產(chǎn)品即將發(fā)布時(shí)才進(jìn)行安全測(cè)試或復(fù)審產(chǎn)品,以補(bǔ)丁(Patch)的方式修復(fù)發(fā)現(xiàn)的安全漏洞對(duì)安全負(fù)責(zé)的是軟件用戶(hù)的IT部門(mén)、管理部門(mén)或信息系統(tǒng)安全專(zhuān)業(yè)認(rèn)證/評(píng)估機(jī)構(gòu)傳統(tǒng)的軟件安全思想不利于軟件安全問(wèn)題的解決軟件須自我保護(hù)、自我提高“免疫力”,防火墻等外在手段無(wú)法徹底解決軟件的安全問(wèn)題沒(méi)有誰(shuí)能保證防火墻和反病毒軟件是完全可靠的,它們自身也可能存在安全漏洞須強(qiáng)調(diào)軟件的自我安全UTM管理病毒防護(hù)入侵檢測(cè)防火墻入侵防御“免疫力”應(yīng)是內(nèi)在能力;軟件也要健壯、“百毒不侵”AV終結(jié)者軟件自身的安全漏洞,會(huì)被用來(lái)攻擊其它軟件,包括保護(hù)它的安全系統(tǒng)須盡早發(fā)現(xiàn)問(wèn)題,盡早解決問(wèn)題BarryBoehm不同階段修復(fù)軟件缺陷的代價(jià)軟件安全人人有責(zé),安全意識(shí)與安全管理是關(guān)鍵只有理解了威脅,并意識(shí)到威脅的存在,才有可能構(gòu)建安全的軟件軟件設(shè)計(jì)、開(kāi)發(fā)人員應(yīng)成為安全問(wèn)題的第一責(zé)任人軟件項(xiàng)目經(jīng)理、主管人員必須認(rèn)識(shí)到,在安全設(shè)計(jì)和安全分析上盡早投入時(shí)間和人力會(huì)有助于提高用戶(hù)對(duì)其產(chǎn)品的信任程度開(kāi)發(fā)人員必須實(shí)施安全工程,安全編碼、安全測(cè)試,保證建造的系統(tǒng)是盡可能安全的軟件用戶(hù)IT部門(mén)管理員必須理解現(xiàn)代系統(tǒng)的分布式本質(zhì),并實(shí)施最低特權(quán)原則等安全管理措施用戶(hù)必須認(rèn)識(shí)到軟件是可以安全的,與軟件供應(yīng)商積極合作,正確、安全地使用軟件,并及時(shí)反饋發(fā)現(xiàn)的問(wèn)題,并為問(wèn)題的快速解決提供盡可能詳盡的描述1.4.2解決軟件安全問(wèn)題的工程化方法借鑒軟件工程解決軟件危機(jī)、軟件質(zhì)量問(wèn)題的工程化方法,實(shí)施軟件安全工程安全培訓(xùn)啟動(dòng)安全并注冊(cè)SWI安全設(shè)計(jì)最優(yōu)方法安全體系結(jié)構(gòu)和攻擊面審核威脅

建模使用安全開(kāi)發(fā)工具和最優(yōu)開(kāi)發(fā)和測(cè)試方法為產(chǎn)品創(chuàng)建安全文檔和工具預(yù)備安全響應(yīng)計(jì)劃安全推動(dòng)滲透測(cè)試最終安全審核安全服務(wù)和響應(yīng)執(zhí)行需求設(shè)計(jì)實(shí)施驗(yàn)證發(fā)布支持和服務(wù)在第2章總體介紹,然后按安全工程不同階段分章介紹解決軟件的安全問(wèn)題,也是一個(gè)社會(huì)工程和系統(tǒng)工程問(wèn)題從社會(huì)組織的角度,建立共享漏洞庫(kù)、加強(qiáng)軟件風(fēng)險(xiǎn)與漏洞管理,有利于分享安全經(jīng)驗(yàn)、避免新系統(tǒng)出現(xiàn)老問(wèn)題建立相關(guān)社區(qū)有利于討論、交流、相互學(xué)習(xí)軟件安全技能、解決軟件安全問(wèn)題的方法與途徑建立并共享安全架構(gòu)、安全庫(kù),在重用中不斷完善自身,有利于應(yīng)用軟件開(kāi)發(fā)者將更多的時(shí)間、精力用于業(yè)務(wù)功能的實(shí)現(xiàn),降低軟件安全開(kāi)發(fā)成本內(nèi)存安全語(yǔ)言、內(nèi)置于編譯器中的代碼安全審核、基于編譯器和操作系統(tǒng)的地址空間布局隨機(jī)化和數(shù)據(jù)執(zhí)行保護(hù)(DataExecutionPrevention,DEP)等安全措施,有利于消減軟件安全缺陷,也有利于增加基于內(nèi)存破壞的攻擊難度制訂并實(shí)施相關(guān)標(biāo)準(zhǔn)或行業(yè)規(guī)范,有利于規(guī)范和促進(jìn)相關(guān)安全技術(shù)的發(fā)展與使用,進(jìn)而全面解決軟件安全問(wèn)題1.4.3軟件安全問(wèn)題的標(biāo)準(zhǔn)化、規(guī)范化解決之路結(jié)合軟件的安全評(píng)估標(biāo)準(zhǔn),促進(jìn)軟件開(kāi)發(fā)在安全方面的標(biāo)準(zhǔn)化、規(guī)范化安全測(cè)評(píng)有利于增加用戶(hù)對(duì)軟件安全性的信心目前最全面的評(píng)估標(biāo)準(zhǔn):ISO/IEC15408Informationtechnology—Securitytechniques—EvaluationcriteriaforITsecurity,俗稱(chēng)通用準(zhǔn)則(CommonCriteria,CC),我國(guó)國(guó)家標(biāo)準(zhǔn)GB/T18336-2015等同采用該標(biāo)準(zhǔn)減少軟件安全漏洞,營(yíng)造更安全的信息社會(huì)環(huán)境我國(guó)依法實(shí)施的國(guó)家標(biāo)準(zhǔn)《GB∕T22239-2019網(wǎng)絡(luò)安全等級(jí)保護(hù)基本要求》、《GB∕T25070-2019網(wǎng)絡(luò)安全等級(jí)保護(hù)安全設(shè)計(jì)技術(shù)要求》等網(wǎng)絡(luò)安全等級(jí)保護(hù)相關(guān)系列標(biāo)準(zhǔn),對(duì)企事業(yè)單位使用的信息系統(tǒng)強(qiáng)制要求安全定級(jí)備案、特定級(jí)別的須安全測(cè)評(píng)后投入使用,并在使用、維護(hù)中定期再定級(jí)測(cè)評(píng)信息安全評(píng)估標(biāo)準(zhǔn)的發(fā)展歷程最全面的評(píng)估準(zhǔn)則《ISO/IEC15408信息技術(shù)安全性評(píng)估準(zhǔn)則》,GB/T18336-2015等同采用ISO/IEC15408:20091985年美國(guó)可信計(jì)算機(jī)系統(tǒng)評(píng)估準(zhǔn)則(TCSEC)1991年歐洲信息技術(shù)安全評(píng)估準(zhǔn)則(ITSEC)1992年美國(guó)聯(lián)邦準(zhǔn)則(FC)1993年加拿大可信計(jì)算機(jī)產(chǎn)品評(píng)估準(zhǔn)則(CTCPEC)1996年六國(guó)七方信息技術(shù)安全評(píng)估通用準(zhǔn)則(CC1.0;1998年CC2.0)1996年國(guó)軍標(biāo)GJB2646軍用計(jì)算機(jī)安全評(píng)估準(zhǔn)則1999年國(guó)際通用準(zhǔn)則(ISO15408)1999年國(guó)標(biāo)GB/T18336信息技術(shù)安全技術(shù)信息技術(shù)安全性評(píng)估準(zhǔn)則1999年國(guó)標(biāo)GB17859計(jì)算機(jī)信息系統(tǒng)安全等級(jí)保護(hù)劃分準(zhǔn)則大型軟件項(xiàng)目招標(biāo)要求之一是,軟件開(kāi)發(fā)團(tuán)隊(duì)中必須有成員具有安全資格證書(shū);事業(yè)單位的系統(tǒng)上線(xiàn)需通過(guò)等保測(cè)評(píng)安全需求分析與安全設(shè)計(jì)基于威脅建模的安全分析與設(shè)計(jì)威脅建?;跀?shù)據(jù)流圖,數(shù)據(jù)流圖(DataFlowDiagram,DFD)是一種結(jié)構(gòu)化系統(tǒng)分析和設(shè)計(jì)方法DFD是軟件工程的內(nèi)容之一,將重點(diǎn)補(bǔ)充講解安全編碼安全架構(gòu)、安全庫(kù)函數(shù);內(nèi)存安全語(yǔ)言,如Rust代碼安全審核與安全可控編譯器內(nèi)置于編譯器中的代碼安全審核內(nèi)置于編譯器中的數(shù)據(jù)執(zhí)行保護(hù)(DataExecutionPrevention,DEP)和棧保護(hù)1.4.4緩解軟件安全問(wèn)題的技術(shù)探索與舉措安全測(cè)試?yán)碚撆c自動(dòng)化工具白盒測(cè)試和黑盒測(cè)試安全測(cè)試?yán)碚撗芯繜狳c(diǎn)之一是模糊測(cè)試(Fuzzing)DevOps與頻繁交付部署DevOps是一組過(guò)程、方法與系統(tǒng)的統(tǒng)稱(chēng),用于促進(jìn)開(kāi)發(fā)、技術(shù)運(yùn)營(yíng)和質(zhì)量保障部門(mén)之間的溝通、協(xié)作與整合實(shí)現(xiàn)DevOps,有利于減少頻繁交付部署、配置導(dǎo)致的安全隱患DevSecOpsDevSecOps工具鏈監(jiān)視與分析預(yù)發(fā)布計(jì)劃?rùn)z測(cè)響應(yīng)創(chuàng)建驗(yàn)證監(jiān)視與分析開(kāi)發(fā)運(yùn)維預(yù)測(cè)預(yù)防發(fā)布調(diào)整②IDE安全插件①?gòu)浹a(bǔ)安全欠缺,DevOps度量,威脅建模,安全工具培訓(xùn)⑩安全技術(shù)欠缺,改進(jìn)事件響應(yīng),改進(jìn)安全防御⑥簽名驗(yàn)證,完整性檢查,縱深防御措施⑦RASP,UEBA/網(wǎng)絡(luò)監(jiān)聽(tīng),滲透測(cè)試③SAST/DAST/IAST,SCA④混沌工程,模糊測(cè)試,集成測(cè)試⑤軟件簽名⑨負(fù)面影響,漏洞相關(guān)性分析,威脅情報(bào)⑧安全編排,RASP/WAF防護(hù),混淆日志與安全邊界監(jiān)控API網(wǎng)關(guān)安全與性能日志安全捍衛(wèi)者可信計(jì)算、可信運(yùn)行環(huán)境與軟件運(yùn)行安全操作系統(tǒng)基于安全硬件的可信計(jì)算支持新版Windows操作系統(tǒng)和Linux操作系統(tǒng)均支持地址空間布局隨機(jī)化(AddressSpaceLayoutRandomization,ASLR),為應(yīng)用軟件對(duì)抗基于內(nèi)存破壞的攻擊,提供了軟件運(yùn)行安全支持緩沖區(qū)溢出等基于內(nèi)存破壞的攻擊,難度加大智能終端的可信運(yùn)行環(huán)境(TrustedExecutionEnvironment,TEE)為移動(dòng)APP、物聯(lián)網(wǎng)應(yīng)用提供運(yùn)行安全支持本章主要內(nèi)容1.1軟件安全范疇1.3安全事件的根源1.2軟件安全現(xiàn)狀1.4解決軟件安全問(wèn)題的途徑與方法1.5作業(yè)與實(shí)踐任務(wù)SQL注入、跨站腳本、相對(duì)路徑攻擊三選一SQL注入任務(wù)內(nèi)容查閱資料了解SQL注入原理與方法,根據(jù)自己的實(shí)際情況開(kāi)展不同層次級(jí)別的SQL注入過(guò)程體驗(yàn),最低層次級(jí)別是基于SQL注入的繞過(guò)身份驗(yàn)證(俗稱(chēng)“萬(wàn)能密碼”),最高層次級(jí)別是獲取數(shù)據(jù)庫(kù)表中存儲(chǔ)的數(shù)據(jù)或利用SQL注入攻擊數(shù)據(jù)庫(kù)系統(tǒng)所在主機(jī)任務(wù)目的熟悉SQL注入原理,感受SQL注入的危害,體驗(yàn)Web應(yīng)用安全,思考軟件開(kāi)發(fā)過(guò)程中如何避免SQL注入漏洞參考方法(詳細(xì)步驟方法可參考范文或網(wǎng)絡(luò)資源)搭建簡(jiǎn)單的Web系統(tǒng),或基于DVWA、SQLIlabs、WebGoat或其它開(kāi)源平臺(tái)搭建靶場(chǎng);手工方式或利用SQL注入工具軟件,針對(duì)自建Web系統(tǒng)或靶場(chǎng),實(shí)施SQL注入實(shí)驗(yàn)1:面向應(yīng)用軟件的典型攻擊跨站腳本攻擊參照SQL注入攻擊相對(duì)路徑攻擊任務(wù)內(nèi)容利用Web系統(tǒng)中的文件上傳或頭像上傳等上傳功能,實(shí)施相對(duì)路徑攻擊。查閱資料了解相對(duì)路徑攻擊的攻擊原理和攻擊方法,并利用目標(biāo)程序的上傳功能實(shí)施攻擊任務(wù)目的熟悉相對(duì)路徑攻擊;了解與路徑相關(guān)的各種攻擊,思考對(duì)抗相對(duì)路徑攻擊的方法并嘗試升級(jí)程序,以避免相對(duì)路徑攻擊的發(fā)生;查閱資料了解與路徑相關(guān)的各種攻擊,并思考相應(yīng)的防御方法參考方法設(shè)計(jì)實(shí)現(xiàn)一個(gè)基于Web的文件上傳功能,利用相對(duì)路徑攻擊,將任意文件上傳到Web服務(wù)器的任意文件夾第2章軟件的工程化安全方法軟件工程解決軟件的質(zhì)量問(wèn)題;軟件安全解決軟件包含安全問(wèn)題的質(zhì)量問(wèn)題;安全是質(zhì)量特性之一,都是軟件固有的內(nèi)在屬性張仁斌2025.02本章主要內(nèi)容2.1軟件工程概述2.2軟件過(guò)程模型2.4軟件安全過(guò)程模型2.3軟件質(zhì)量與軟件的安全特性2.5軟件安全開(kāi)發(fā)初體驗(yàn)2.6作業(yè)與實(shí)踐任務(wù)2.1.1軟件的發(fā)展過(guò)程軟件伴隨計(jì)算機(jī)技術(shù)的發(fā)展經(jīng)歷了三個(gè)階段程序設(shè)計(jì)階段軟件設(shè)計(jì)階段軟件工程階段2.1.1軟件的發(fā)展過(guò)程軟件伴隨計(jì)算機(jī)技術(shù)的發(fā)展經(jīng)歷了三個(gè)階段程序設(shè)計(jì)階段軟件設(shè)計(jì)階段軟件工程階段1946年~1955年特點(diǎn):尚無(wú)軟件的概念,程序設(shè)計(jì)主要圍繞硬件進(jìn)行開(kāi)發(fā)規(guī)模很小、工具簡(jiǎn)單無(wú)明確分工(開(kāi)發(fā)者和用戶(hù))程序設(shè)計(jì)追求節(jié)省空間和編程技巧,無(wú)文檔資料主要是用于科學(xué)計(jì)算2.1.1軟件的發(fā)展過(guò)程軟件伴隨計(jì)算機(jī)技術(shù)的發(fā)展經(jīng)歷了三個(gè)階段程序設(shè)計(jì)階段軟件設(shè)計(jì)階段軟件工程階段1956年~1970年特點(diǎn):硬件環(huán)境相對(duì)穩(wěn)定,出現(xiàn)“軟件作坊”的開(kāi)發(fā)組織形式開(kāi)始使用產(chǎn)品軟件(可購(gòu)買(mǎi)),從而建立了軟件的概念系統(tǒng)規(guī)模越來(lái)越龐大,高級(jí)編程語(yǔ)言層出不窮,應(yīng)用領(lǐng)域不斷拓寬開(kāi)發(fā)者和用戶(hù)有了明確分工,社會(huì)對(duì)軟件的需求量劇增但是軟件開(kāi)發(fā)技術(shù)沒(méi)有重大突破,生產(chǎn)效率低下,從而導(dǎo)致“軟件危機(jī)”產(chǎn)生2.1.1軟件的發(fā)展過(guò)程軟件伴隨計(jì)算機(jī)技術(shù)的發(fā)展經(jīng)歷了三個(gè)階段程序設(shè)計(jì)階段軟件設(shè)計(jì)階段軟件工程階段1970年~至今由于軟件危機(jī)的產(chǎn)生,迫使人們不得不研究、改變軟件開(kāi)發(fā)的技術(shù)手段和管理方法。從此軟件生產(chǎn)進(jìn)入軟件工程時(shí)代特點(diǎn):軟件工程時(shí)代的生產(chǎn)方式是工程化生產(chǎn)使用數(shù)據(jù)庫(kù)、開(kāi)發(fā)工具、開(kāi)發(fā)環(huán)境、網(wǎng)絡(luò)、先進(jìn)的開(kāi)發(fā)技術(shù)和方法,使生產(chǎn)率大大提高但未能完全擺脫軟件危機(jī)GB/T8566-2007信息技術(shù)軟件生存周期過(guò)程GB/T8567-2006計(jì)算機(jī)軟件產(chǎn)品開(kāi)發(fā)文件編制指南GB/T11457-2006信息技術(shù)軟件工程術(shù)語(yǔ)2.1.2軟件危機(jī)什么是軟件危機(jī)?開(kāi)發(fā)軟件所需的高成本同產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱(chēng)為“軟件危機(jī)”?!败浖C(jī)”是在1968年召開(kāi)的國(guó)際軟件工程會(huì)議上被人們普遍認(rèn)識(shí)的軟件危機(jī)包括兩方面的問(wèn)題如何開(kāi)發(fā)軟件,才能滿(mǎn)足軟件日益增長(zhǎng)的需要如何維護(hù)數(shù)量不斷膨脹的軟件產(chǎn)品軟件危機(jī)的具體體現(xiàn)軟件開(kāi)發(fā)成本及進(jìn)度難以預(yù)測(cè)用戶(hù)對(duì)已完成的軟件系統(tǒng)不滿(mǎn)足軟件產(chǎn)品質(zhì)量無(wú)法保證軟件產(chǎn)品難以維護(hù)軟件通常缺少適當(dāng)?shù)奈臋n資料軟件成本逐年提高軟件開(kāi)發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用技術(shù)的迅速普及Developingsoftwarewithoutsecurityinmindislikewalkingahighwirewithoutanet.《SoftwareSecurityEngineering:AGuideforProjectManagers》典型失敗系統(tǒng)的例子(1/4)IBM公司開(kāi)發(fā)OS/360系統(tǒng)OS/360系統(tǒng),共有4000多個(gè)模塊,約100萬(wàn)條指令,投入5000人年,耗資數(shù)億美元,結(jié)果還是延期交付。在交付使用后的系統(tǒng)中仍發(fā)現(xiàn)大量(2000個(gè)以上)的錯(cuò)誤1964年啟動(dòng),最早的主機(jī)操作系統(tǒng)最初預(yù)定于1965年交付,實(shí)際到1966年開(kāi)始交付,1967年全部交付Therac-25事件Therac-25是AtomicEnergyofCanadaLimited所生產(chǎn)的一種輻射治療的機(jī)器由于其軟件設(shè)計(jì)時(shí)的瑕疵,劑量設(shè)定超過(guò)安全范圍,導(dǎo)致在1985年6月到1987年1月之間,6件已知的醫(yī)療事故中,患者死亡或受到嚴(yán)重輻射灼傷典型失敗系統(tǒng)的例子(2/4)1996年,亞利安五號(hào)(Ariane5)原型爆炸1996年6月4日測(cè)試發(fā)射失敗,整臺(tái)火箭在發(fā)射后37秒自身毀滅,原因是控制火箭飛行的軟件故障。一項(xiàng)資料對(duì)話(huà)顯示64位元浮點(diǎn)跳到16位元,整個(gè)數(shù)據(jù)有誤,造成處理器卡頓(算子錯(cuò)誤)典型失敗系統(tǒng)的例子(3/4)2017年11月28日,俄羅斯東方航天發(fā)射場(chǎng)當(dāng)日發(fā)射的一枚“聯(lián)盟-2.1b”運(yùn)載火箭,由于出現(xiàn)不可逆轉(zhuǎn)故障導(dǎo)致發(fā)射失敗,搭載的19顆衛(wèi)星也全部損毀。后來(lái)查明事故原因,是因?yàn)榛鸺厦婕?jí)控制系統(tǒng)的算法有缺陷,導(dǎo)致上面級(jí)與火箭分離時(shí)空間方向錯(cuò)誤典型失敗系統(tǒng)的例子(4/4)波音737MAX軟件缺陷2019年3月埃塞俄比亞航空公司ET302航班失事2018年10月印尼獅航JT610航班墜毀人機(jī)爭(zhēng)奪控制權(quán),自動(dòng)控制軟件根據(jù)錯(cuò)誤的傳感器數(shù)據(jù)進(jìn)行錯(cuò)誤控制,且權(quán)限高于手工操控產(chǎn)生軟件危機(jī)的原因客觀原因硬件生產(chǎn)率大幅提高軟件生產(chǎn)隨規(guī)模增大、復(fù)雜度增大軟件生產(chǎn)率很低硬、軟件供需失衡主觀原因在軟件開(kāi)發(fā)中缺乏科學(xué)管理的方法,開(kāi)發(fā)進(jìn)度不能保證,軟件開(kāi)發(fā)和維護(hù)困難只重視開(kāi)發(fā)而輕視問(wèn)題的定義,使軟件產(chǎn)品無(wú)法滿(mǎn)足用戶(hù)的需求缺乏軟件質(zhì)量管理規(guī)范對(duì)軟件開(kāi)發(fā)成本的估計(jì)不準(zhǔn)確,造成開(kāi)發(fā)成本超出預(yù)算過(guò)分重視程序設(shè)計(jì)人員的個(gè)人技能,缺少有效方法與軟件工具的支持,軟件產(chǎn)品個(gè)性化,可維護(hù)性差解決軟件危機(jī)的途徑從技術(shù)和組織管理兩個(gè)方面去研究,不斷總結(jié)經(jīng)驗(yàn)教訓(xùn),提高軟件產(chǎn)品的生產(chǎn)效率,降低軟件開(kāi)發(fā)和維護(hù)的成本開(kāi)發(fā)軟件選用最好的開(kāi)發(fā)工具至關(guān)重要,工具選用的好,它可以“放大”人的智力,大大加快軟件開(kāi)發(fā)速度,提高軟件質(zhì)量為了解決軟件危機(jī),人們開(kāi)始探索用工程化的方法進(jìn)行軟件開(kāi)發(fā),軟件開(kāi)發(fā)工程化的概念和方法應(yīng)運(yùn)而生,由此誕生了一門(mén)新興學(xué)科——軟件工程學(xué)2.1.3軟件工程“軟件工程”一詞是1968年專(zhuān)門(mén)討論解決“軟件危機(jī)”的國(guó)際會(huì)議上正式提出并使用的軟件工程是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的一門(mén)工程學(xué)科,它以“工程化”的思想來(lái)開(kāi)發(fā)與維護(hù)軟件IEEE給出軟件工程的定義是將系統(tǒng)的、規(guī)范的、可度量的工程化方法應(yīng)用于軟件開(kāi)發(fā)、運(yùn)行和維護(hù)的全過(guò)程及對(duì)上述方法的研究軟件工程研究?jī)?nèi)容軟件工程的主要研究?jī)?nèi)容(軟件工程三要素):過(guò)程、方法、工具軟件工程學(xué)軟件開(kāi)發(fā)技術(shù)軟件工程管理軟件開(kāi)發(fā)方法學(xué)(方法)軟件工具(工具)軟件工程環(huán)境(工具)軟件管理學(xué)(過(guò)程、質(zhì)量)軟件經(jīng)濟(jì)學(xué)(過(guò)程、質(zhì)量)軟件度量學(xué)(過(guò)程、質(zhì)量)軟件過(guò)程(過(guò)程)質(zhì)量焦點(diǎn)過(guò)程方法工具軟件工程體系層次圖軟件工程學(xué)的范疇過(guò)程開(kāi)發(fā)軟件產(chǎn)品遵循的路線(xiàn)圖就稱(chēng)為軟件過(guò)程。一般,開(kāi)發(fā)軟件時(shí),需要畫(huà)出路線(xiàn)圖,指導(dǎo)操作者按一定順序和步驟創(chuàng)建適時(shí)的、高質(zhì)量的軟件產(chǎn)品方法提供軟件開(kāi)發(fā)的各種方法工具為軟件工程方法和過(guò)程提供了自動(dòng)和半自動(dòng)的支撐環(huán)境管理與控制是指為使軟件產(chǎn)品符合規(guī)定需求所進(jìn)行的一系列有計(jì)劃的必要工作。管理與控制是質(zhì)量保證;質(zhì)量是推動(dòng)軟件過(guò)程不斷改進(jìn)的動(dòng)力軟件工程=+++過(guò)程軟件開(kāi)發(fā)過(guò)程的模型,也稱(chēng)作軟件生存周期模型:瀑布模型快速原型模型螺旋模型……方法開(kāi)發(fā)方法:結(jié)構(gòu)化方法面向數(shù)據(jù)結(jié)構(gòu)的方法面向?qū)ο蟮姆椒āぁぁぁぁぁすぞ唛_(kāi)發(fā)工具:需求分析和概要設(shè)計(jì)工具詳細(xì)設(shè)計(jì)和編碼工具測(cè)試工具維護(hù)和理解工具項(xiàng)目管理工具配置管理工具······軟件工程=管理與控制是指為使軟件產(chǎn)品符合規(guī)定需求所進(jìn)行的一系列有計(jì)劃的必要工作。管理與控制是質(zhì)量保證;質(zhì)量是推動(dòng)軟件過(guò)程不斷改進(jìn)的動(dòng)力+++下一節(jié)詳細(xì)介紹各種經(jīng)典模型軟件工程七條基本原理用分階段的生命周期計(jì)劃嚴(yán)格管理堅(jiān)持進(jìn)行階段復(fù)審,以便盡早發(fā)現(xiàn)問(wèn)題實(shí)行嚴(yán)格的產(chǎn)品控制采用現(xiàn)代程序設(shè)計(jì)技術(shù)結(jié)果應(yīng)能清楚地審查,即每階段都有相應(yīng)文檔、標(biāo)志任務(wù)完成的里程碑開(kāi)發(fā)小組人員少而精承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性軟件工程的目標(biāo)實(shí)現(xiàn)軟件的工程化生產(chǎn),提高軟件的質(zhì)量與生產(chǎn)效率,化解軟件危機(jī),即達(dá)到如下目標(biāo):付出較低的開(kāi)發(fā)成本達(dá)到要求的軟件功能取得較好的軟件性能開(kāi)發(fā)的軟件易于移植需要較低的維護(hù)費(fèi)用按時(shí)完成開(kāi)發(fā)任務(wù),及時(shí)交付使用低開(kāi)發(fā)成本易于維護(hù)按時(shí)交付高可靠性高質(zhì)量2.1.4軟件生命周期軟件開(kāi)發(fā)生命周期(SystemsDevelopmentLifeCycle,SDLC)是指軟件從定義開(kāi)始,經(jīng)過(guò)開(kāi)發(fā)、使用和維護(hù),直到最終報(bào)廢的全過(guò)程,亦稱(chēng)軟件生命周期或軟件生存周期軟件生命周期模型,也稱(chēng)作軟件過(guò)程模型SDLC的三個(gè)時(shí)期及其階段軟件定義問(wèn)題定義可行性分析需求分析軟件維護(hù)用戶(hù)跟蹤培訓(xùn)故障分析解決軟件升級(jí)處理軟件報(bào)廢處理軟件開(kāi)發(fā)總體設(shè)計(jì)詳細(xì)設(shè)計(jì)軟件編碼單元測(cè)試綜合測(cè)試軟件開(kāi)發(fā)軟件維護(hù)軟件定義軟件生命周期SDLC各個(gè)階段基本任務(wù)各階段基本任務(wù)及主要文檔(軟件開(kāi)發(fā)角度)問(wèn)題定義可行性分析需求分析系統(tǒng)設(shè)計(jì)軟件編碼綜合測(cè)試軟件維護(hù)定義階段開(kāi)發(fā)階段軟件維護(hù)(問(wèn)題定義報(bào)告/目標(biāo)與范文說(shuō)明書(shū))(可行性研究報(bào)告/論證報(bào)告)(需求規(guī)格說(shuō)明書(shū))(概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)說(shuō)明書(shū))(程序)(測(cè)試報(bào)告)(運(yùn)維報(bào)告)獲取用戶(hù)需求分析、細(xì)化、補(bǔ)充完善用戶(hù)需求系統(tǒng)開(kāi)發(fā)方法各階段的任務(wù)(項(xiàng)目管理角度)系統(tǒng)規(guī)劃制定信息系統(tǒng)發(fā)展戰(zhàn)略形成系統(tǒng)建設(shè)總體方案制定開(kāi)發(fā)計(jì)劃系統(tǒng)分析初步調(diào)查可行性分析詳細(xì)調(diào)查系統(tǒng)邏輯方案設(shè)計(jì)系統(tǒng)設(shè)計(jì)模塊結(jié)構(gòu)設(shè)計(jì)編碼設(shè)計(jì)物理配置方案設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)計(jì)算機(jī)處理過(guò)程設(shè)計(jì)系統(tǒng)實(shí)施物理系統(tǒng)的實(shí)施程序編碼系統(tǒng)測(cè)試人員培訓(xùn)系統(tǒng)切換系統(tǒng)運(yùn)行與維護(hù)硬件維護(hù)軟件維護(hù)數(shù)據(jù)維護(hù)系統(tǒng)評(píng)價(jià)系統(tǒng)中信息編碼方法設(shè)計(jì);程序流程圖、功能框圖設(shè)計(jì);匯編語(yǔ)言程序設(shè)計(jì)的交叉編碼表設(shè)計(jì)等各階段軟件開(kāi)發(fā)費(fèi)用的比例SDLC各個(gè)階段基本任務(wù)(續(xù))1、軟件定義階段問(wèn)題定義確定“要解決的問(wèn)題是什么”階段結(jié)果,產(chǎn)生出:?jiǎn)栴}定義報(bào)告問(wèn)題定義報(bào)告是系統(tǒng)分析員簡(jiǎn)要地寫(xiě)出關(guān)于問(wèn)題性質(zhì)、工程目標(biāo)和工程規(guī)模的書(shū)面報(bào)告可行性研究回答“上一個(gè)階段所確定的問(wèn)題是否有行得通的解決辦法”,確定“做還是不做”階段結(jié)果,產(chǎn)生出:可行性研究報(bào)告2、軟件開(kāi)發(fā)階段【1】需求分析確定系統(tǒng)必須具備哪些功能,回答“目標(biāo)系統(tǒng)必須做什么?”(不回答怎么做)階段結(jié)果,產(chǎn)生出:需求規(guī)格說(shuō)明書(shū)軟件需求規(guī)格說(shuō)明書(shū)必須清楚、準(zhǔn)確地描述軟件的每一個(gè)基本需求(功能、性能、設(shè)計(jì)約束和屬性)和外部界面在需求分析階段確定的系統(tǒng)邏輯模型是以后設(shè)計(jì)和實(shí)現(xiàn)目標(biāo)系統(tǒng)的基礎(chǔ)。因此,必須準(zhǔn)確完整地體現(xiàn)用戶(hù)的要求“需求規(guī)格說(shuō)明書(shū)”也就是常說(shuō)的“需求分析報(bào)告”【2】概要設(shè)計(jì)(也稱(chēng)總體設(shè)計(jì))關(guān)鍵問(wèn)題是“怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)”,回答“如何解決該問(wèn)題?”,即系統(tǒng)“怎樣做?”任務(wù)是確定系統(tǒng)的總體結(jié)構(gòu)、外部接口、模塊的劃分、模塊的功能及數(shù)據(jù)庫(kù)設(shè)計(jì)階段結(jié)果,產(chǎn)生出:概要設(shè)計(jì)說(shuō)明書(shū)【3】詳細(xì)設(shè)計(jì)把解決方法具體化,關(guān)鍵問(wèn)題是“怎樣具體地實(shí)現(xiàn)目標(biāo)系統(tǒng)”,解決每個(gè)模塊內(nèi)部算法和數(shù)據(jù)結(jié)構(gòu),程序員可以根據(jù)詳細(xì)設(shè)計(jì)結(jié)果寫(xiě)出代碼階段結(jié)果,產(chǎn)生出:詳細(xì)設(shè)計(jì)說(shuō)明書(shū)【4】編碼和單元測(cè)試根據(jù)設(shè)計(jì)說(shuō)明書(shū)中每一個(gè)模塊的流程選取一種適當(dāng)?shù)母呒?jí)程序設(shè)計(jì)語(yǔ)言,寫(xiě)出正確的、容易理解而且容易維護(hù)的程序代碼,并仔細(xì)測(cè)試每一個(gè)模塊階段結(jié)果:無(wú)語(yǔ)法錯(cuò)誤的源程序voidCTestDlg::OnBtn11(){inta,b,c,d;Read(&a,&b,&c);d=a*b^c/sqrt(a,c);}//函數(shù)名基于序號(hào),不便于維護(hù),不易理解

//變量命名不能顧名思義,易誤用//變量易誤用,出錯(cuò)不易查找//變量易誤用,語(yǔ)句不易理解,除以零錯(cuò)誤//代碼格式不規(guī)范,且缺少必要的說(shuō)明【5】綜合測(cè)試通過(guò)各種類(lèi)型的測(cè)試及相應(yīng)的調(diào)試使軟件達(dá)到預(yù)定的要求。最基本的是集成測(cè)試和驗(yàn)收測(cè)試集成測(cè)試是根據(jù)總體設(shè)計(jì)規(guī)格說(shuō)明書(shū),把經(jīng)過(guò)單元測(cè)試的模塊逐步進(jìn)行集成和測(cè)試驗(yàn)收測(cè)試,也稱(chēng)作確認(rèn)測(cè)試,是根據(jù)軟件需求規(guī)格說(shuō)明書(shū),測(cè)試軟件系統(tǒng)是否滿(mǎn)足用戶(hù)的需求階段結(jié)果可供用戶(hù)使用的軟件產(chǎn)品(文檔、源程序)測(cè)試報(bào)告3、運(yùn)行維護(hù)階段通過(guò)必要的維護(hù)活動(dòng),使系統(tǒng)持久地滿(mǎn)足客戶(hù)需求完善性維護(hù)指在使用軟件系統(tǒng)的過(guò)程中為滿(mǎn)足用戶(hù)提出的新功能和性能要求而進(jìn)行的維護(hù)活動(dòng)糾錯(cuò)性維護(hù)診斷和改正在使用過(guò)程中發(fā)現(xiàn)的軟件錯(cuò)誤適應(yīng)性維護(hù)適應(yīng)變化的環(huán)境而修改軟件的活動(dòng)預(yù)防性維護(hù)為進(jìn)一步改進(jìn)軟件的可維護(hù)性、可靠性而進(jìn)行的維護(hù)活動(dòng)本章主要內(nèi)容2.1軟件工程概述2.2軟件過(guò)程模型2.4軟件安全過(guò)程模型2.3軟件質(zhì)量與軟件的安全特性2.5軟件安全開(kāi)發(fā)初體驗(yàn)2.6作業(yè)與實(shí)踐任務(wù)過(guò)程模型概述生命周期模型規(guī)定了把生命周期劃分成哪些階段及各個(gè)階段的執(zhí)行順序,因此,也稱(chēng)為過(guò)程模型微軟的軟件過(guò)程模型是比較成熟的模型,逐步發(fā)展為軟件安全過(guò)程模型微軟的軟件過(guò)程模型的基礎(chǔ)是螺旋模型螺旋模型綜合了瀑布模型和原型模型,采用增量模型重復(fù)應(yīng)用瀑布模型的基本成分和原型模型迭代特征的策略,增加風(fēng)險(xiǎn)分析,用迭代和風(fēng)險(xiǎn)驅(qū)動(dòng)整個(gè)軟件開(kāi)發(fā)過(guò)程可以根據(jù)實(shí)際情況綜合應(yīng)用各種模型2.2.1瀑布模型瀑布模型是將軟件生存周期各活

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論