版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、操作系統(tǒng)安全中電運(yùn)行楊賢渠版本:3.0軟件開發(fā)安全軟件開發(fā)安全背景為什么要做軟件安全開發(fā)?一、網(wǎng)絡(luò)攻擊階段自動化一、網(wǎng)絡(luò)攻擊階段自動化二、網(wǎng)絡(luò)攻擊二、網(wǎng)絡(luò)攻擊智能化:智能化:相當(dāng)多的工具已經(jīng)具備了反偵破、只能動態(tài)行為、攻擊工具變異等特點三、漏洞的發(fā)現(xiàn)和利用速度越來越快三、漏洞的發(fā)現(xiàn)和利用速度越來越快四四、突破防火墻、突破防火墻的滲透率越來越高的滲透率越來越高課程內(nèi)容3軟件安全開發(fā)軟件安全開發(fā)知識體知識域軟件安全軟件安全開發(fā)概況開發(fā)概況軟件安全需求和設(shè)計軟件安全需求和設(shè)計軟件安全編碼軟件安全編碼軟件安全測試軟件安全測試軟件安全開發(fā)軟件安全開發(fā)的關(guān)鍵工作的關(guān)鍵工作軟件安全開發(fā)的必要性軟件安全開發(fā)的
2、必要性軟件安全開發(fā)背景軟件安全開發(fā)背景知識子域軟件安全開發(fā)模型及研究軟件安全開發(fā)模型及研究軟件安全的基本概念 軟件的定義 計算機(jī)程序、方法、規(guī)則和相關(guān)的文檔資料以及在計算機(jī)上運(yùn)行時所需的數(shù)據(jù)(IEEE) 軟件安全 軟件安全(Software Security)就是使軟件在受到惡意攻擊的情形下依然能夠繼續(xù)正確運(yùn)行及確保軟件被在授權(quán)范圍內(nèi)合法使用的思想。 保護(hù)軟件中的知識成果、知識產(chǎn)權(quán)、數(shù)據(jù)不被非法使用,包括篡改及盜用、破壞等,保證系統(tǒng)的正常運(yùn)作。4軟件安全問題廣泛存在 軟件應(yīng)用廣泛 電腦游戲、火車票售票系統(tǒng)、多媒體教學(xué) 手機(jī)、航天飛機(jī)、人造衛(wèi)星 軟件安全問題廣泛存在 運(yùn)行錯誤 售票系統(tǒng)反應(yīng)慢、連
3、不上、崩潰 多媒體教學(xué)系統(tǒng)死機(jī) 黑客盜取泄漏的銀行密碼 系統(tǒng)被攻擊 服務(wù)器被攻擊 機(jī)密數(shù)據(jù)丟失等 安全問題日益增加5軟件安全問題產(chǎn)生后果 軟件安全問題的后果 造成產(chǎn)品運(yùn)行不穩(wěn)定,得不到正確結(jié)果甚至崩潰 可靠性、可用性 被惡意攻擊,導(dǎo)致信息泄漏/數(shù)據(jù)破壞等后果 保密性、完整性 一些因軟件安全問題導(dǎo)致的嚴(yán)重后果 售票系統(tǒng)癱瘓 美國放射治療儀超劑量輻射事件 阿麗亞納5號火箭首發(fā)失敗事件 Stuxnet病毒攻擊伊朗布什爾核電站6社工庫社工庫漏洞情況統(tǒng)計 中國國家漏洞庫15年漏洞數(shù)量情況統(tǒng)計(http:/ 內(nèi)因 軟件開發(fā)安全意識淡薄 軟件開發(fā)缺乏安全知識 軟件趨向大型化和復(fù)雜化 軟件第三方擴(kuò)展增多 外因
4、 軟件使用場景更具威脅(部署環(huán)境) 系統(tǒng)漏洞、第三方應(yīng)用漏洞 旁站攻擊、C段攻擊、C段嗅探等10軟件越來越復(fù)雜11 Windows 系列軟件源代碼行數(shù)系列軟件源代碼行數(shù)漏洞與軟件安全 漏洞普遍存在 平均每1000行程序存在20個缺陷 (Dacey 2003) 采用嚴(yán)格的軟件開發(fā)質(zhì)量管理機(jī)制和多重測試環(huán)節(jié),軟件公司的缺陷率( 千行代碼): 普通軟件開發(fā)公司的缺陷密度為440個缺陷 高水平的軟件公司的缺陷密度為24個缺陷 美國NASA的軟件缺陷密度可達(dá)到0.1個缺陷 漏洞已經(jīng)成為危害軟件安全的主要因素 危及用戶對軟件的信任、業(yè)務(wù)運(yùn)營,還會危及一系列關(guān)鍵基礎(chǔ)設(shè)施和應(yīng)用12試題131. 安全的運(yùn)行環(huán)境
5、是軟件安全的基礎(chǔ),操作系統(tǒng)安全配置是確保運(yùn)行環(huán)境安全必不可少的工作,某管理員對即將上線的Windows操作系統(tǒng)進(jìn)行了以下四項安全部署工作,其中哪項設(shè)置不利于提高運(yùn)行環(huán)境安全?a、操作系統(tǒng)安裝完成后安裝最新的安全補(bǔ)丁,確保操作系統(tǒng)不存在可被利用的安全漏洞b、為了方便進(jìn)行數(shù)據(jù)備份,安裝Windows操作系統(tǒng)時只使用一個分區(qū)所有數(shù)據(jù)和操作系統(tǒng)都存放在C盤c、操作系統(tǒng)上部署防病毒軟件,以對抗病毒的威脅d、將默認(rèn)的管理員賬號Administrator改名,降低口令暴力破解攻擊的發(fā)生可能某購物網(wǎng)站開發(fā)項目經(jīng)過需求分析進(jìn)入系統(tǒng)設(shè)計階段,為了保證用戶賬戶的安全,項目開發(fā)人員決定用戶登陸時如果用戶名或口令輸入錯
6、誤,給用戶返回“用戶名或口令輸入錯誤”信息,輸入錯誤達(dá)到三次,將暫時禁止登錄該賬戶,請問以上安全設(shè)計遵循的是哪項安全設(shè)計原則:a、最少共享機(jī)制原則 b、經(jīng)濟(jì)機(jī)制原則 c、不信任原則 d、默認(rèn)故障處理保護(hù)原則 答案答案C試題14某網(wǎng)站管理員小鄧在流量監(jiān)測中發(fā)現(xiàn)近期網(wǎng)站的入站ICMP流量上升了250%,盡管網(wǎng)站沒有發(fā)現(xiàn)任何的性能下降或其他問題,但為了安全起見,他仍然向主管領(lǐng)導(dǎo)提出了應(yīng)對措施,作為主管負(fù)責(zé)人,請選擇有效的針對此問題的應(yīng)對措施:a、在防火墻上設(shè)置策略,阻止所有的ICMP流量進(jìn)入(關(guān)掉ping)b、刪除服務(wù)器上的ping.exe程序c、增加帶寬以應(yīng)對可能的拒絕服務(wù)攻擊d、增加網(wǎng)站服務(wù)器以
7、應(yīng)對即將來臨的拒絕服務(wù)攻擊試題15某單位系統(tǒng)管理員對組織內(nèi)核心資源的訪問制定訪問策略,針對每個用戶指明能夠訪問的資源,對于不在指定資源列表中的對象不允許訪問,該訪問控制策略屬于以下哪一種:a、強(qiáng)制訪問控制 b、基于角色的訪問控制 c、自主訪問控制 d、基于任務(wù)的訪問控制答案答案C在2014年巴西世界杯舉行期間,一些黑客組織攻擊了世界杯贊助商及政府網(wǎng)站,制造了大量網(wǎng)絡(luò)流量,阻塞正常用戶訪問網(wǎng)站。這種攻擊類型屬于下面什么攻擊()a、跨站腳本( cross site scripting,XSS)攻擊b、TCP 會話劫持( TCP HIJACK)攻擊c、ip欺騙攻擊 d、拒絕服務(wù)(denialserv
8、ice.dos)攻擊知識域:軟件安全開發(fā)概況 知識子域:軟件安全開發(fā)的必要性 理解軟件安全保障的含義、思路和目標(biāo) 了解傳統(tǒng)軟件開發(fā)的局限性 理解軟件安全開發(fā)生命周期的概念和必要性16需要安全的軟件 理想的安全軟件 不存在安全漏洞 能抵御各種攻擊威脅 按照預(yù)期的方式執(zhí)行 軟件安全保障的思路 通過在軟件開發(fā)生命周期各階段采取必要的、相適應(yīng)的安全措施來避免絕大多數(shù)的安全漏洞。 采取措施只能有效減少,但并不能完全杜絕所有的安全漏洞。 沒有完全安全的軟件17軟件安全保障 軟件可以規(guī)避安全漏洞而按照預(yù)期的方式執(zhí)行其功能 目標(biāo):在軟件開發(fā)生命周期中提升軟件的安全性 可信賴性:無論是惡意而為還是無意疏忽,軟件
9、都沒有可利用的漏洞存在 可預(yù)見性:對軟件執(zhí)行時其功能符合開發(fā)者的意圖的信心。 遵循性:將(軟件開發(fā))跨學(xué)科的活動計劃并系統(tǒng)化,以確保軟件過程和軟件產(chǎn)品滿足需求、遵循相關(guān)標(biāo)準(zhǔn)。18軟件安全保障與風(fēng)險管理 在軟件安全保障中,需要貫徹風(fēng)險管理的思想 “安全就是風(fēng)險管理” 軟件安全是以風(fēng)險管理為基礎(chǔ) 安全不必是完美無缺的,但風(fēng)險必須是能夠管理的,將風(fēng)險值降到最低 最適宜的軟件安全策略就是最優(yōu)的風(fēng)險管理對策 這是一個在有限資源前提下的最優(yōu)選擇問題 防范不足會造成直接的損失;防范過多又會造成間接的損失19傳統(tǒng)的軟件開發(fā)局限性傳統(tǒng)軟件開發(fā)教育的局限性傳統(tǒng)開發(fā)人員能力的局限性傳統(tǒng)軟件生命周期的局限性 軟件教育
10、包括軟件工程、數(shù)據(jù)結(jié)構(gòu)、編譯原理、系統(tǒng)結(jié)構(gòu)、程序語言等 缺乏安全開發(fā)教育 對安全問題沒有的足夠理解 不了解安全設(shè)計的基本原理 不知道安全漏洞的常見類型 不知道如何設(shè)計針對安全的測試數(shù)據(jù) 軟件生命周期包括需求分析、架構(gòu)設(shè)計、代碼編寫、測試和運(yùn)行維護(hù)五個階段 缺乏安全介入的階段20軟件安全開發(fā)生命周期 軟件安全開發(fā) 采取措施防止由于設(shè)計、開發(fā)、提交、升級或維護(hù)中的缺陷而導(dǎo)致的系統(tǒng)脆弱性 20世紀(jì)末/21世紀(jì)初開始展開研究v 安全軟件開發(fā)生命周期 安全軟件開發(fā)涵蓋了軟件開發(fā)整個生命周期 是軟件從產(chǎn)生直到報廢的生命周期,周期內(nèi)有問題定義、可行性分析、總體描述、系統(tǒng)設(shè)計、編碼、調(diào)試和測試、驗收與運(yùn)行、維
11、護(hù)升級到廢棄等階段。 通過軟件開發(fā)的各個步驟來確保軟件的安全性,其目標(biāo)是確保安全的軟件得以成功21安全軟件開發(fā)生命周期 將安全融入 在設(shè)計/開發(fā)/測試等過程中融入安全 在傳統(tǒng)的過程中增加安全過程 安全提前介入 NIST:在軟件發(fā)布以后進(jìn)行修復(fù)的代價是在軟件設(shè)計和編碼階段即進(jìn)行修復(fù)所花代價的30倍 軟件系統(tǒng)發(fā)布以后才進(jìn)行漏洞修復(fù)代價是最高的,且常常伴隨著軟件系統(tǒng)使用者的極大損失 實施軟件安全開發(fā) 規(guī)范指南 最佳實踐22降低解決軟件安全問題的代價 早期發(fā)現(xiàn)并改正錯誤有以下優(yōu)點 在軟件開發(fā)生命周期中,后面的階段改正錯誤開銷比前面的階段要高出數(shù)倍 早期發(fā)現(xiàn)并改正錯誤可以減少時間和開銷23試題24某公司
12、在互聯(lián)網(wǎng)區(qū)域新建了一個WEB網(wǎng)站,為了保護(hù)該網(wǎng)站主頁安全性,尤其是不能讓攻擊者修改主頁內(nèi)容,該公司應(yīng)當(dāng)購買并部署下面哪個設(shè)備()a、負(fù)載均衡設(shè)備 b、網(wǎng)頁防篡改系統(tǒng) c、網(wǎng)絡(luò)防病毒系統(tǒng) d、網(wǎng)絡(luò)審計系統(tǒng) 答案答案B某政府機(jī)構(gòu)委托開發(fā)商開發(fā)了一個OA系統(tǒng),其中有一個公文分發(fā),公文通知等為WORD文檔,廠商在進(jìn)行系統(tǒng)設(shè)計時使用了 FTP來對公文進(jìn)行分發(fā),以下說法不正確的是a、FTP協(xié)議明文傳輸數(shù)據(jù),包括用戶名和密碼,攻擊者可能通過會話過程嗅探獲得FTP密碼,從而威脅 OA系統(tǒng)b、FTP協(xié)議需要進(jìn)行驗證才能訪問在,攻擊者可以利用FTP進(jìn)行口令的暴力破解c、FTP協(xié)議已經(jīng)是不太使用的協(xié)議,可能與新版本
13、的瀏覽器存在兼容性問題d、FTP應(yīng)用需要安裝服務(wù)器端軟件,軟件存在漏洞可能會影響到OA系統(tǒng)的安全試題25 IS審計師參與應(yīng)用系統(tǒng)開發(fā),他們從事以下哪項可以導(dǎo)致獨立性的減弱.a、對系統(tǒng)開發(fā)進(jìn)行了復(fù)核 b、對控制和系統(tǒng)的其他改進(jìn)提出了建議c、對完成后的系統(tǒng)進(jìn)行了獨立評價d、積極參與了系統(tǒng)的設(shè)計和完成以下關(guān)于安全套接層協(xié)議(Secure Sockets Layer,SSL)說法錯誤的是:a、SSL協(xié)議位于TCP/IP協(xié)議層和應(yīng)用協(xié)議之間b、SSL協(xié)議廣泛應(yīng)用于web瀏覽器與服務(wù)器之間的身份認(rèn)證和加密數(shù)據(jù)傳輸c、SSL是一種可靠的端到端的安全服務(wù)協(xié)議d、SSL是設(shè)計用來保護(hù)操作系統(tǒng)的知識域:軟件安全開
14、發(fā)概況 知識子域:軟件安全開發(fā)模型及研究 了解安全開發(fā)生命周期(SDL)的發(fā)展歷程,理解SDL的主要內(nèi)容 了解使安全成為軟件開發(fā)必須的部分(BSI)系列模型 了解綜合的輕量級應(yīng)用安全過程(CLASP)的主要內(nèi)容 了解軟件保障成熟度模型(SAMM)的框架 了解各個模型的特點及適用性26可信計算安全開發(fā)生命周期 微軟,2002.1,蓋茨v 安全開發(fā)生命周期SDL SDL即Security Development Lifecycle (SDL),是微軟提出的從安全角度指導(dǎo)軟件開發(fā)過程的管理模式。SDL不是一個空想的理論模型。它是微軟為了面對現(xiàn)實世界中安全挑戰(zhàn),在實踐中的一步步發(fā)展起來的模式。 軟件安
15、全開發(fā)周期SDL的核心理念就是將軟件安全的考慮集成在軟件開發(fā)的每一個階段 需求分析、設(shè)計、編碼、測試和維護(hù)。27SDL發(fā)展歷史 2002.1今 20 世紀(jì) 90 年代中期到后期 (Melissa) 和 21 世紀(jì)初期(Code Red、Nimda、UPnP 等)出現(xiàn)了一系列影響重大的惡意軟件事件,促使微軟重新考慮開發(fā)人員安全過程和策略28SDL的階段和安全活動 軟件安全開發(fā)生命階段 5+2個階段 16項必需的安全活動29IE采用SDL后的效果30Source: Browser Vulnerability Analysis, Microsoft Security Blog 27-NOV-2007
16、采用采用SDL之前之前采用采用SDL之后之后漏洞總數(shù)降低了35%高危漏洞數(shù)降低了63%正式發(fā)布后12個月內(nèi)修復(fù)的漏洞總數(shù)BSI系列模型 BSI使安全成為軟件開發(fā)必須的部分 在整個軟件開發(fā)生命周期中要確保將安全作為軟件的一個有機(jī)組成部分。 無須改變你的軟件開發(fā)方法 適用各種軟件開發(fā)生命周期 合作 NIST 美國國土安全部 大學(xué)(加州大學(xué)戴維斯分校、普林斯頓、萊斯)31接觸點模型 接觸點,即在軟件開發(fā)生命周期中保障軟件安全 一套最優(yōu)方法、一種戰(zhàn)術(shù)性方法 在每一個開發(fā)階段上盡可能地避免和消除漏洞 “黑帽子”和“白帽子”32SSF SSF(Software Security Framework) 軟件
17、安全框架33監(jiān)管監(jiān)管信息信息/情報情報SSDL接觸點接觸點部署部署策略和度量攻擊模式架構(gòu)分析滲透測試履約和策略安全特征和設(shè)計代碼審計軟件環(huán)境培訓(xùn)標(biāo)準(zhǔn)和需求安全測試配置管理和漏洞管理BSIMM BSI成熟度模型 Building Security In Maturity Mode Gary McGraw、Brian Chess和Sammy Migues 使用SSF對所有項目進(jìn)行描述 了解別人的安全項目過程,指導(dǎo)自己的安全項目 目標(biāo) 是對真實的軟件安全項目所開展的活動進(jìn)行量化 構(gòu)建和不斷發(fā)展軟件安全行動的指南 BSIMM 3.0 2011年 42個公司(Microsoft、Intel、Google
18、、)34CLASP 綜合的輕量應(yīng)用安全過程(Comprehensive, Lightweight Application Security Process (CLASP) ) 選取了30個特定的基于角色的活動(activities),用于提升整個開發(fā)團(tuán)隊的安全意識,并針對這些活動給出了相應(yīng)的指南、導(dǎo)則和檢查列表35CLASP介紹v基于角色 項目經(jīng)理 、需求分析師 、軟件架構(gòu)師 、設(shè)計者 、實施人員 、集成和編譯人員 、測試者和測試分析師 、安全審計員 對于每個活動,CLASP描述了以下內(nèi)容 安全活動應(yīng)該在什么時間、應(yīng)該如何實施 如果不進(jìn)行這項安全活動,將會帶來的多大的風(fēng)險 如果實施這項安全活動
19、,估計需要多少成本36SAMM OWASP SAMM Software Assurance Maturity Mode 軟件保證成熟度模型 OWASP(開放Web應(yīng)用安全項目) 一個開放的框架,用以幫助制定并實施針對軟件安全特定風(fēng)險的策略 評估一個組織已有的軟件安全實踐; 建立一個迭代的權(quán)衡的軟件安全保證計劃; 證明安全保證計劃帶來的實質(zhì)性改善; 定義并衡量組織中與安全相關(guān)的措施。 37SAMM 規(guī)定了四個軟件開發(fā)過程中的核心業(yè)務(wù)功能 治理:組織管理其軟件開發(fā)的過程和活動 構(gòu)造:組織在開發(fā)項目中確定目標(biāo)并開發(fā)軟件的過程與活動 驗證:組織測試和驗證軟件的過程與活動 部署:組織軟件發(fā)布的相關(guān)管理過
20、程與活動 4個成熟度級別 0-3級38各模型比較39SDL文檔豐富,維護(hù)更新及時較多工具支持適合大型企業(yè)BSI接觸點強(qiáng)調(diào)開發(fā)安全重點注重實用方法上手容易BSIMM最佳實踐參考他山之玉不強(qiáng)制實踐CLASP 輕量級過程;以角色及其職責(zé)為核心適合小型企業(yè)SAMM開放框架安全知識要求較低和BSIMM的安全活動能對應(yīng)試題40以下哪個選項不是防火墻技術(shù)?a、IP地址欺騙防護(hù) b、NAT c、訪問控制 d、SQL注入攻擊防護(hù) 答案答案D消息在發(fā)送前,用發(fā)送者的私鑰加密消息內(nèi)容和它的哈希(hash,或譯作:雜選、摘要)值,能夠保證:a、消息的真實性和完整性 b、消息的真實性和保密性 c、消息的完整性和保密性
21、d、保密性和防抵賴性答案答案A為增強(qiáng)Web應(yīng)用程序的安全性,某軟件開發(fā)經(jīng)理決定加強(qiáng)Web軟件安全開發(fā)培訓(xùn),下面哪項內(nèi)容要在他的考慮范圍內(nèi)?a、關(guān)于網(wǎng)站身份簽別技術(shù)方面安全知識的培訓(xùn)b、針對OpenSSL心臟出血漏洞方面安全知識的培訓(xùn)c、針對SQL注入漏洞的安全編程培訓(xùn)d、關(guān)于ARM系統(tǒng)漏洞挖掘方面安全知識的培訓(xùn)試題41下面哪項屬于軟件開發(fā)安全方面的問題?a、軟件部署時所需選用服務(wù)性能不高,導(dǎo)致軟件執(zhí)行效率低b、應(yīng)用軟件來考慮多線程技術(shù),在對用戶服務(wù)時按序排隊提供服務(wù)c、應(yīng)用軟件存在sql注入漏洞,若被黑客利用能竊取數(shù)據(jù)庫所用數(shù)據(jù)d、軟件受許可證(license)限制,不能在多臺電腦上安裝某網(wǎng)站
22、在設(shè)計時經(jīng)過了威脅建模和攻擊面分析,在開發(fā)時要求程序員編寫安全的代碼,但是在部署時由于管理員將備份存放在WEB目錄下導(dǎo)致了攻擊者可直接下載備份,為了發(fā)現(xiàn)系統(tǒng)中是否存在其他類擬問題,以下哪種測試方式是最佳的測試方法?a、模糊測試 b、源代碼測試 c、滲透測試 d、軟件功能測試答案答案C由于頻繁出現(xiàn)軟件運(yùn)行時被黑客遠(yuǎn)程攻擊獲取數(shù)據(jù)的現(xiàn)象,某軟件公司準(zhǔn)備加強(qiáng)軟件安全開發(fā)管理,在下面做法中,對于解決問題沒有直接幫助的是( )a、要求所有的開發(fā)人員參加軟件安全開發(fā)知識培訓(xùn)b、要求增加軟件源代碼審核環(huán)節(jié),加強(qiáng)對軟件代碼的安全性審查c、要求統(tǒng)一采用Windows8系統(tǒng)進(jìn)行開發(fā),不能采用之前的Windows版
23、本d、要求邀請專業(yè)隊伍進(jìn)行第三方安全性測試,盡量從多角度發(fā)現(xiàn)軟件安全問題試題42微軟SDL將軟件開發(fā)生命周期制分為七個階段,并列出了十七項重要的安全活動。其中“棄用不安全的函數(shù)”屬于( )的安全活動a、要求(Rapuiroments)階段b、設(shè)計(Design)階段 c、實施(Implenpentation)階段d、驗證(Verifcation)階段某公司開發(fā)了一個游戲網(wǎng)站,但是由于網(wǎng)站軟件存在漏洞,在網(wǎng)絡(luò)中傳輸大數(shù)據(jù)包時總是會丟失一些數(shù)據(jù),如一次性傳輸大于2000個字節(jié)數(shù)據(jù)時,總是會有3到5個字節(jié)不能傳送到對方,關(guān)于此案例,可以推斷的是( )a、該網(wǎng)站軟件存在保密性方面安全問題b、該網(wǎng)站軟件
24、存在完整性方面安全問題c、該網(wǎng)站軟件存在可用性方面安全問題d、該網(wǎng)站軟件存在不可否認(rèn)性方面安全問題試題43在提高阿帕奇系統(tǒng)(Apache HTTP Server)系統(tǒng)安全性時,下面哪項措施不屬于安全配置內(nèi)容( )?a、不在Windows下安裝Apache,只在Linux和Unix下安裝b、安裝Apache時,只安裝需要的組件模塊c、不使用操作系統(tǒng)管理員用戶身份運(yùn)行Apache,而是采用權(quán)限受限的專用用戶賬號來運(yùn)行d、積極了解Apache的安全通告,并及時下載和更新下面哪一種關(guān)于安全的說法是不對的?a、加密技術(shù)的安全性不應(yīng)大于使用該技術(shù)的人的安全性b、任何電子郵件程序的安全性不應(yīng)大于實施加密的計
25、算機(jī)的安全性c、加密算法的安全性與密鑰的安全性一致d、每個電子郵件消息的安全性是通過用標(biāo)準(zhǔn)的非隨機(jī)的密鑰加密來實現(xiàn)試題44某網(wǎng)站為了更好向用戶提供服務(wù),在新版本設(shè)計時提供了用戶快捷登錄功能,用戶如果使用上次的IP地址進(jìn)行訪問,就可以無需驗證直接登錄,該功能推出后,導(dǎo)致大量用戶賬號被盜用,關(guān)于以上問題的說法正確的是:a、網(wǎng)站問題是由于開發(fā)人員不熟悉安全編碼,編寫了不安全的代碼,導(dǎo)致攻擊面增大,產(chǎn)生此安全問題b、網(wǎng)站問題是由于用戶缺乏安全意識導(dǎo)致,使用了不安全的功能,導(dǎo)致網(wǎng)站攻擊面增大,產(chǎn)生此問題c、網(wǎng)站問題是由于使用便利性提高,帶來網(wǎng)站用戶數(shù)增加,導(dǎo)致網(wǎng)站攻擊面增大,產(chǎn)生此安全問題d、網(wǎng)站問題是
26、設(shè)計人員不了解安全設(shè)計關(guān)鍵要素,設(shè)計了不安全的功能,導(dǎo)致網(wǎng)站攻擊面增大,產(chǎn)生此問題在對某面向互聯(lián)網(wǎng)提供服務(wù)的某應(yīng)用服務(wù)器的安全檢測中發(fā)現(xiàn),服務(wù)器上開放了以下幾個應(yīng)用,除了一個應(yīng)用外其他應(yīng)用都存在明文傳輸信息的安全問題,作為一名檢測人員,你需要告訴用戶對應(yīng)用進(jìn)行安全整改以外解決明文傳輸數(shù)據(jù)的問題,以下哪個應(yīng)用已經(jīng)解決了明文傳輸數(shù)據(jù)問題:a、SSH b、HTTP c、FTP d、SMTP答案答案A試題45S公司在全國有20個分支機(jī)構(gòu),總部有10臺服務(wù)器.200個用戶終端,每個分支機(jī)構(gòu)都有一臺服務(wù)器.100個左右用戶終端,通過專網(wǎng)進(jìn)行互聯(lián)互通。公司招標(biāo)的網(wǎng)絡(luò)設(shè)計方案中,四家集成商給出了各自的IP地址
27、規(guī)劃和分配的方法,作為評標(biāo)專家,請給S公司選出設(shè)計最合理的一個:a、總部使用服務(wù)器.用戶終端統(tǒng)一作用10.0.1.X.各分支機(jī)構(gòu)服務(wù)器和用戶終端使用192.168.2.X192.168.20.Xb、總部使用服務(wù)器使用11.用戶終端使用2212,分支機(jī)構(gòu)IP地址隨意確定即可c、總部服務(wù)器使用10.0.1.X. 用戶終端根據(jù)部門劃分使用10.0.2.X.每個分支機(jī)構(gòu)分配兩個A類地址段,一個用做服務(wù)器地址段.另外一個做用戶終端地址段d、因為通過互聯(lián)網(wǎng)連接,訪問的是互聯(lián)網(wǎng)地址,內(nèi)部地址經(jīng)NAT映射,因此IP地址無需特別規(guī)劃,各機(jī)構(gòu)自行決定即可在軟件保障成熟度模型(Sof
28、tware Assurance Maturity Mode,SAMM)中,規(guī)定了軟件開發(fā)過程中的核心業(yè)務(wù)功能,下列哪個選項不屬于核心業(yè)務(wù)功能:a、治理,主要是管理軟件開發(fā)的過程和活動b、構(gòu)造,主要是在開發(fā)項目中確定目標(biāo)并開發(fā)軟件的過程與活動c、驗證,主要是測試和驗證軟件的過程與活動d、購置,主要是購買第三方商業(yè)軟件或者采用開源組件的相關(guān)管理過程與活動試題46關(guān)于軟件安全開發(fā)生命周期(SDL),下面說法錯誤的是:a、在軟件開發(fā)的各個周期都要考慮安全因素b、軟件安全開發(fā)生命周期要綜合采用技術(shù).管理和工程等手段c、測試階段是發(fā)現(xiàn)并改正軟件安全漏洞的最佳環(huán)節(jié),過早或過晚檢測修改漏洞都將增大軟件開發(fā)成本
29、d、在設(shè)計階段就盡可能發(fā)現(xiàn)并改正安全隱患,將極大減少整個軟件開發(fā)成本知識域:軟件安全開發(fā)關(guān)鍵工作 知識子域:軟件安全需求和設(shè)計 了解軟件安全需求分析和安全設(shè)計的重要性 理解軟件安全設(shè)計基本原則 理解影響系統(tǒng)安全性的6類威脅,以及威脅建模過程47軟件安全需求及安全設(shè)計的重要性 安全編碼?安全測試? 傳統(tǒng)方法:軟件發(fā)布后測試、等待修復(fù)Bug 安全提前介入,效益高,成本低48v設(shè)計缺陷舉例明文存儲口令,甚至將口令拿到客戶端對比驗證SQL注入越權(quán)訪問、驗證機(jī)制不完善上傳漏洞軟件安全需求及安全設(shè)計的重要性 軟件安全需求和設(shè)計是開發(fā)安全軟件的基礎(chǔ) 軟件安全需求分析 以風(fēng)險管理為基礎(chǔ),建立“威脅”分析計劃
30、建立軟件安全需求定義,確保軟件安全需求定義正確 安全需求應(yīng)文檔化 軟件安全設(shè)計 軟件系統(tǒng)的每一項需求,都應(yīng)該在軟件安全設(shè)計階段認(rèn)真考慮49安全設(shè)計原則v 最小特權(quán):只分配所需的權(quán)限v 權(quán)限分離:不允許根據(jù)單一條件執(zhí)行操作v 最小共享v 完全中立:不偏重任何技術(shù)手段的原則v 心理可接受:他們將使用它嗎?v 默認(rèn)故障處理:出故障時自動關(guān)閉;無單點故障v 經(jīng)濟(jì)機(jī)制:保持簡單、易懂的特性v 不信任v 縱深防御v 保護(hù)最薄弱的環(huán)節(jié)v 公開設(shè)計:假設(shè)攻擊者具有源代碼和規(guī)格v 隱私保護(hù)v 攻擊面最小化50受攻擊面概念v什么是受攻擊面 對一個軟件系統(tǒng)可以采取的攻擊方法集合,軟件的功能、API、接口、資源、數(shù)據(jù)
31、存儲等都是受攻擊面v為什么要降低受攻擊面 一個軟件的攻擊面越大安全風(fēng)險就越大 房子門窗越多,被入侵的可能性更高。51降低受攻擊面的方法 第一步:分析產(chǎn)品功能的重要性(是否必須) 第二步:分析從哪里訪問這些功能 第三步:采取合理措施(降低特權(quán))52受攻擊面增加遠(yuǎn)程訪問受限訪問本地訪問僅管理員訪問用戶訪問匿名訪問降低軟件受攻擊面策略 重要等級為低的功能:攻擊面大,取消該功能 重要等級為中的功能:攻擊面大,設(shè)置為非默認(rèn)開啟,需要用戶配置后才予以開啟 重要等級為高的功能:攻擊面大,關(guān)閉或限制一些接口方式,增加一些安全的保證措施或技術(shù)53減少軟件受攻擊面54較高受攻擊面較高受攻擊面較低受攻擊面較低受攻擊
32、面默認(rèn)執(zhí)行默認(rèn)關(guān)閉打開網(wǎng)絡(luò)連接關(guān)閉網(wǎng)絡(luò)連接同時偵聽UDP和TCP流量僅偵聽TCP流量匿名訪問鑒別用戶訪問弱ACLs強(qiáng)ACLs管理員訪問普通用戶訪問因特網(wǎng)訪問本地子網(wǎng)訪問代碼以管理員或root權(quán)限運(yùn)行代碼以Network Services、Local Services或自定義的低權(quán)限賬戶運(yùn)行統(tǒng)一缺省配置用戶可選的配置ActiveX控件.NET代碼標(biāo)記有腳本安全的ActiveX控件未標(biāo)記有腳本安全的ActiveX控件非SiteLocked ActiveX控件SiteLocked ActiveX控件威脅建模 什么是威脅建模 威脅建模是了解系統(tǒng)面臨的安全威脅,確定威脅風(fēng)險并通過適當(dāng)?shù)木徑獯胧┮越档惋L(fēng)險
33、,提高系統(tǒng)安全性的過程。 為什么要威脅建模 幫助在設(shè)計階段充分了解各種安全威脅,并指導(dǎo)選擇適當(dāng)?shù)膽?yīng)對措施 對可能的風(fēng)險進(jìn)行管理 可以重新驗證其架構(gòu)和設(shè)計 有助于軟件的受攻擊面降低威脅建模使得您可以對最可能影響系統(tǒng)的威脅進(jìn)行系統(tǒng)地識別和評價55威脅建模 為什么要用威脅建模? 無論您是構(gòu)建新系統(tǒng)還是更新現(xiàn)有系統(tǒng),都需要考慮入侵者攻擊系統(tǒng)的可能方式,然后在系統(tǒng)的設(shè)計和實施階段構(gòu)建適當(dāng)?shù)姆烙侄巍?Microsoft 通過稱作威脅建模的技術(shù)來進(jìn)行安全系統(tǒng)設(shè)計,這種技術(shù)對系統(tǒng)設(shè)計和體系結(jié)構(gòu)進(jìn)行系統(tǒng)化的檢查,以發(fā)現(xiàn)和更正設(shè)計級的安全性問題。威脅建模是安全性開發(fā)生命周期 (Security Developm
34、ent Lifecycle) 項目不可或缺的一部分。56威脅建模流程 確定對象 識別威脅 評估威脅 消減威脅57威脅建模流程 標(biāo)識資源標(biāo)識資源。 找出系統(tǒng)必須保護(hù)的有價值的資源。 創(chuàng)建總體體系結(jié)構(gòu)創(chuàng)建總體體系結(jié)構(gòu)。 利用簡單的圖表來記錄應(yīng)用程序的體系結(jié)構(gòu),包括子系統(tǒng)、信任邊界和數(shù)據(jù)流。 分解應(yīng)用程序分解應(yīng)用程序。 分解應(yīng)用程序的體系結(jié)構(gòu),包括基本的網(wǎng)絡(luò)和主機(jī)基礎(chǔ)結(jié)構(gòu)的設(shè)計,從而為應(yīng)用程序創(chuàng)建安全配置文件。安全配置文件的目的是發(fā)現(xiàn)應(yīng)用程序的設(shè)計、實現(xiàn)或部署配置中的缺陷。 識別威脅識別威脅。 牢記攻擊者的目標(biāo),利用對應(yīng)用程序的體系結(jié)構(gòu)和潛在缺陷的了解,找出可能影響應(yīng)用程序的威脅。 記錄威脅記錄威脅
35、。 利用通用威脅模板記錄每種威脅,該模板定義了一套要捕獲的各種威脅的核心屬性。 評價威脅評價威脅。 對威脅進(jìn)行評價以區(qū)分優(yōu)先順序,并首先處理最重要的威脅。這些威脅帶來的危險最大。評價過程要權(quán)衡威脅的可能性,以及攻擊發(fā)生時可能造成的危害。評價的結(jié)果可能是:通過對比威脅帶來的風(fēng)險與為使威脅得到減少所花費的成本,對于某些威脅采取的行動是不值得的。58STRIDE建模方法 STRIDE建模 微軟SDL中提出 發(fā)現(xiàn)或糾正設(shè)計級(design-level)的安全問題 一種確保應(yīng)用程序具有這些屬性的方法是使用 STRIDE 進(jìn)行威脅建模,STRIDE 是 Spoofing(假冒)、Tampering(篡改)
36、、Repudiation(否認(rèn))、Information Disclosure(信息泄漏)、Denial of Service(拒絕服務(wù))和 Elevation of Privilege(提升權(quán)限)的字母縮略詞59SSpoolfing Identity假冒身份/欺騙標(biāo)識TTampering with data篡改數(shù)據(jù)RRepudiation抵賴IInformation Disclosure信息泄漏DDenial of Service拒絕服務(wù)EElevation of Privilege權(quán)限提升理解STRIDE威脅威脅安全屬性定義舉例Spoofing(哄騙)可鑒別性模仿其他人或?qū)嶓w偽裝成或ntd
37、ll.dll。Tampering(篡改)完整性修改數(shù)據(jù)或代碼修改硬盤、DVD或網(wǎng)絡(luò)數(shù)據(jù)包中的DLLRepudiation(抵賴) 不可抵賴性 聲稱沒有執(zhí)行某個動作“我沒有發(fā)送過那封電子郵件”,“我沒有修改過那個文件”,“親愛的,我確實沒有訪問過那個網(wǎng)站!”Information Disclosure(信息泄露)機(jī)密性把信息披露給那些無權(quán)知道的人允許某人閱讀Windows源代碼;公布某個Web網(wǎng)站的用戶清單。Denial of Service(拒絕服務(wù))可用性拒絕為用戶提供服務(wù)使得Windows或Web網(wǎng)站崩潰,發(fā)送數(shù)據(jù)包并耗盡CPU時間,將數(shù)據(jù)包路由到某黑洞中。Elevation of Pri
38、vilege(權(quán)限提升)授權(quán)獲得非授權(quán)訪問權(quán)允許遠(yuǎn)程因特網(wǎng)用戶執(zhí)行命令,讓受限用戶獲得管理員權(quán)限。60消減威脅舉例61 消減威脅威脅類型消減機(jī)制舉例消減技術(shù)舉例假冒認(rèn)證認(rèn)證方式:Cookie認(rèn)證、Kerberos認(rèn)證、PKI纂改完整性哈希函數(shù)、消息認(rèn)證碼、數(shù)字簽名、防篡改協(xié)議抵賴非抵賴性服務(wù)強(qiáng)認(rèn)證、安全審計、數(shù)字簽名、時間戳信息泄露保密性加密、保護(hù)秘密、訪問控制、不保存秘密、隱私保護(hù)協(xié)議拒絕服務(wù)可用性認(rèn)證、訪問控制、過濾、流量控制、授權(quán)特權(quán)提升授權(quán)訪問控制列表、最小權(quán)限運(yùn)行試題62數(shù)據(jù)在進(jìn)行傳輸前,需要由協(xié)議棧自上而下對數(shù)據(jù)進(jìn)行封裝,TCPIP協(xié)議中,數(shù)據(jù)封裝的順序是:a、傳輸層、網(wǎng)絡(luò)接口層、
39、互聯(lián)網(wǎng)絡(luò)層b、傳輸層、互聯(lián)網(wǎng)絡(luò)層、網(wǎng)絡(luò)接口層c、互聯(lián)網(wǎng)絡(luò)層、傳輸層、網(wǎng)絡(luò)接口層d、互聯(lián)網(wǎng)絡(luò)層、網(wǎng)絡(luò)接口層、傳輸層以下關(guān)于PGP(Pretty Good Privacy)軟件敘述錯誤的是:a、PGP可以實現(xiàn)對郵件的加密.簽名和認(rèn)證b、PGP可以實現(xiàn)數(shù)據(jù)壓縮 c、PGP可以對郵件進(jìn)行分段和重組d、PGP采用SHA算法加密郵件微軟提出了STRIDE模型,其中R是Repudiation(抵賴)的縮寫,關(guān)于此項錯誤的是:a、某用戶在登錄系統(tǒng)并下載數(shù)據(jù)后,卻聲稱“我沒有下載過數(shù)據(jù)軟件R威脅b、某用戶在網(wǎng)絡(luò)通信中傳輸完數(shù)據(jù)后,卻聲稱“這些數(shù)據(jù)不是我傳輸?shù)摹蓖{也屬于R威脅。c、對于R威脅,可以選擇使用如強(qiáng)認(rèn)
40、證、數(shù)字簽名、安全審計等技術(shù)d、對于R威脅,可以選擇使用如隱私保護(hù)、過濾、流量控制等技術(shù)試題63以下關(guān)于軟件安全測試說法正確的是?a、軟件安全測試就是黑盒測試b、Fuzz測試是經(jīng)常采用的安全測試方法之一c、軟件安全測試關(guān)注的是軟件的功能d、軟件安全測試可以發(fā)現(xiàn)軟件中產(chǎn)生的所有安全問題下面哪個模型和軟件安全開發(fā)無關(guān)( )?a、微軟提出的“安全開發(fā)生命周期(Security Development Lifecycle,SDL)”b、Gray McGraw等提出的“使安全成為軟件開發(fā)必須的部分(Building Security IN,BSI)”c、OWASP維護(hù)的“軟件保證成熟度模型(Softwa
41、re Assurance Maturity Mode,SAMM)”d、美國提出的“信息安全保障技術(shù)框架(Information Assurance Technical Framework,IATF)”試題64微軟提出了STRIDE模型,其中R是Repudiation(抵賴)的縮寫,關(guān)于此項安全要求,下面描述錯誤的是()?a、某用戶在登錄系統(tǒng)并下載數(shù)據(jù)后,卻聲稱“我沒有下載過數(shù)據(jù)”軟件系統(tǒng)中的這種威脅就屬于R威脅b、解決R威脅,可以選擇使用抗抵賴性服務(wù)技術(shù)來解決,如強(qiáng)認(rèn)證、數(shù)字簽名、安全審計等技術(shù)措施c、R威脅是STRIDE六種威脅中第三嚴(yán)重的威脅,比D威脅和E威脅的嚴(yán)重程度更高d、解決R威脅,
42、也應(yīng)按照確定建模對象、識別威脅、評估威脅以及消減威脅等四個步驟來進(jìn)行知識域:軟件安全開發(fā)關(guān)鍵工作 知識子域:軟件安全編碼 理解通用安全編碼準(zhǔn)則:驗證輸入、避免緩沖區(qū)溢出、程序內(nèi)部安全、安全調(diào)用組件、禁止使用不安全函數(shù)等 理解使用安全編譯技術(shù)對提高編碼安全水平的作用,了解常用安全編譯技術(shù) 理解源代碼審核的目的及方式,了解常見源代碼靜態(tài)審核工具65通用安全編碼準(zhǔn)則 驗證輸入 避免緩沖區(qū)溢出 程序內(nèi)部安全 安全調(diào)用組件 禁止使用不安全函數(shù)66驗證輸入 安全程序第一道防線是檢查每一個不可信的輸入 難以檢查所有的輸入,可能導(dǎo)致IE被惡意利用 檢查、驗證或者過濾輸入 不讓惡意數(shù)據(jù)進(jìn)入程序后續(xù)處理 類似網(wǎng)絡(luò)
43、中部署防火墻 何處檢查 最初接收數(shù)據(jù)時 (第一次)使用數(shù)據(jù)時67驗證輸入常見輸入源 命令行 參數(shù)數(shù)量、數(shù)據(jù)格式、內(nèi)容 環(huán)境變量 環(huán)境變量可能超出期望 有的環(huán)境變量存儲格式存在危險 文件 不信任可以被不可信用戶控制的文件內(nèi)容 不信任臨時文件 網(wǎng)絡(luò) 來自網(wǎng)絡(luò)的數(shù)據(jù)是“高度不可信的” 其他來源68驗證輸入常見數(shù)據(jù)類型 數(shù)字 數(shù)字檢查(正則表達(dá)式/ASCII值) 負(fù)數(shù)檢查(大數(shù)溢出為負(fù)數(shù)) Sendamil 攻擊 合法范圍檢查 文件名 最好不讓用戶設(shè)置文件名 避免特殊字符69驗證輸入常見數(shù)據(jù)類型 電子郵件地址 非法的電子郵件地址 UTF-8 變長編碼 URI/URL 非法地址 在合法地址后面增加惡意內(nèi)
44、容 畸形數(shù)據(jù)包70避免緩沖區(qū)溢出 緩沖區(qū)溢出:是指當(dāng)計算機(jī)向緩沖區(qū)內(nèi)填充數(shù)據(jù)位數(shù)時超過了緩沖區(qū)本身的容量,溢出的數(shù)據(jù)覆蓋在合法數(shù)據(jù)上。 理想的情況是:程序會檢查數(shù)據(jù)長度,而且并不允許輸入超過緩沖區(qū)長度的字符。但是絕大多數(shù)程序都會假設(shè)數(shù)據(jù)長度總是與所分配的儲存空間相匹配,這就為緩沖區(qū)溢出埋下隱患。操作系統(tǒng)所使用的緩沖區(qū),又被稱為“堆?!?,在各個操作進(jìn)程之間,指令會被臨時儲存在“堆?!碑?dāng)中,“堆?!币矔霈F(xiàn)緩沖區(qū)溢出。 是一個非常普遍而且嚴(yán)重的問題 緩沖區(qū)溢出是一種非常普遍、非常危險的漏洞,在各種操作系統(tǒng)、應(yīng)用軟件中廣泛存在。利用緩沖區(qū)溢出攻擊,可以導(dǎo)致程序運(yùn)行失敗、系統(tǒng)宕機(jī)、重新啟動等后果。更為
45、嚴(yán)重的是,可以利用它執(zhí)行非授權(quán)指令,甚至可以取得系統(tǒng)特權(quán),進(jìn)而進(jìn)行各種非法操作。 惡意攻擊者常用溢出漏洞提升權(quán)限,并以管理員權(quán)限執(zhí)行非法操作。71緩沖區(qū)溢出后果 溢出后果 攻擊者可以使遠(yuǎn)程服務(wù)程序或者本地程序崩潰 攻擊者可以設(shè)計溢出后執(zhí)行的代碼 C/C+語言 語言特性決定 大量的庫函數(shù)存在溢出 其他語言 調(diào)用C語言庫 C#允許設(shè)置“不安全”例程72避免緩沖區(qū)溢出解決辦法 解決辦法 編碼避免緩沖區(qū)溢出 填充數(shù)據(jù)時計算邊界、動態(tài)分配內(nèi)存、控制輸入 使用替代的安全函數(shù)或函數(shù)庫 使用沒有緩沖區(qū)溢出問題的函數(shù):strncpy、strncat、C+中std:string 使用替代庫:Libmib、libs
46、afe 使用更新更安全的編譯環(huán)境,打開具有安全防御機(jī)制的安全編譯選項 StackGuard、ProPolice、/GS 非執(zhí)行的堆棧防御 不可在堆棧上執(zhí)行代碼73程序內(nèi)部安全 程序內(nèi)部接口安全 程序內(nèi)部接口數(shù)據(jù)的檢查 異常安全處理 檢測異常,安全處理各種可能運(yùn)行路徑 檢測到某些錯誤行為/數(shù)據(jù),必須以合適的方式處理,保證程序運(yùn)行安全 必要時立即拒絕服務(wù),甚至不回送詳細(xì)的錯誤代碼74程序內(nèi)部安全 最小化反饋 避免給予不可靠用戶過多的信息 成功或失敗 作為跟蹤檢查的日志可以記錄較為詳細(xì)的信息 認(rèn)證程序在認(rèn)證前盡量少給信息(版本) 如果程序接受了密碼,不要返回它 避免拒絕服務(wù)攻擊 輸入錯誤盡快返回 設(shè)
47、置超時 延時服務(wù)75程序內(nèi)部安全 避免競爭條件 訪問共享資源時(文件/變量)沒有被適當(dāng)?shù)乜刂?使用原子操作 使用鎖操作避免死鎖 安全使用臨時文件 很多安全漏洞發(fā)生在訪問已知文件名或可猜測的臨時文件時76安全調(diào)用其他組件 應(yīng)用程序?qū)嶋H上幾乎都不會是自包含的,它們通常都會調(diào)用其他組件 底層的操作系統(tǒng) 數(shù)據(jù)庫 可重用的庫 網(wǎng)絡(luò)服務(wù)(WEB、DNS)77安全調(diào)用其他組件 組件安全 檢查組件文檔,搜索相關(guān)說明 gets 隨機(jī)數(shù) 使用經(jīng)過認(rèn)可的組件 盡可能不調(diào)用外部命令,如果不得已要調(diào)用,必須嚴(yán)格檢查參數(shù) system、open、exec、78安全調(diào)用其他組件 返回值安全 一定要檢查返回值,調(diào)用是否成功
48、成功時檢查 返回值,是否按照期望值處理 數(shù)據(jù)中可能含有 NUL 字符、無效字符或其他可能產(chǎn)生問題的東西 錯誤時檢查 錯誤碼 傳遞數(shù)據(jù)安全 視安全需求和安全環(huán)境 考慮傳輸加密,包括密碼算法和安全協(xié)議79安全編譯 使用最新版本編譯器與支持工具 使用編譯器內(nèi)置防御特性 gcc -Wall -Wpointer-arith -Wstrict-prototypes -O2 80源代碼審核 源代碼審核就是檢查源代碼,檢測并報告源代碼中的可能導(dǎo)致安全弱點的薄弱之處。 人工審核 費時費力 容易遺漏 工具審核 速度快,自動 可升級知識庫81 源代碼源代碼審核審核關(guān)注編碼中的實現(xiàn)缺陷,通常通過靜態(tài)分關(guān)注編碼中的實現(xiàn)
49、缺陷,通常通過靜態(tài)分析工具進(jìn)行,它們掃描源代碼,能夠發(fā)現(xiàn)大約析工具進(jìn)行,它們掃描源代碼,能夠發(fā)現(xiàn)大約50%的安的安全全問題問題。代碼審核工具 商業(yè)工具 Coverity Fortify Ounce Labs SecureSoftware 免費/開源工具 BOON Cqual Xg+ FindBugs82“好”的源代碼分析工具 安全性 安全審核,不要以功能為主 多層性 軟件的多層架構(gòu)、多層平臺、多種語言 可擴(kuò)展性 擴(kuò)展規(guī)則、擴(kuò)展技術(shù) 知識性 主用于分析,開發(fā)者也能“學(xué)到” 安全編程知識 集成性 支持與IDE集成,支持make、ant等工具83知識域:軟件安全開發(fā)關(guān)鍵工作 知識子域:軟件安全編碼 理解通用安全編碼準(zhǔn)則:驗證輸入、避免緩沖區(qū)溢出、程序內(nèi)部安全、安全調(diào)用組件、禁止使用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 我國上市公司定向增發(fā)公告效應(yīng)及影響因素的多維度實證剖析
- 石蠟加氫裝置操作工安全行為競賽考核試卷含答案
- 苯酚丙酮裝置操作工誠信考核試卷含答案
- 脫脂工安全技能考核試卷含答案
- 名人介紹教學(xué)課件
- 老年用藥依從性術(shù)語的醫(yī)患溝通策略-1
- 2026上??萍即髮W(xué)物質(zhì)科學(xué)與技術(shù)學(xué)院電鏡平臺招聘工程師1名備考題庫及1套參考答案詳解
- 基因與遺傳?。簜惱碚n件
- 生理學(xué)核心概念:心肌收縮力調(diào)節(jié)課件
- 公共交通運(yùn)營安全管理責(zé)任制度
- 四川省高等教育自學(xué)考試畢業(yè)生登記表【模板】
- 專題五 以新發(fā)展理念引領(lǐng)高質(zhì)量發(fā)展
- (完整word)長沙胡博士工作室公益發(fā)布新加坡SM2考試物理全真模擬試卷(附答案解析)
- GB/T 6682-2008分析實驗室用水規(guī)格和試驗方法
- GB/T 22417-2008叉車貨叉叉套和伸縮式貨叉技術(shù)性能和強(qiáng)度要求
- GB/T 1.1-2009標(biāo)準(zhǔn)化工作導(dǎo)則 第1部分:標(biāo)準(zhǔn)的結(jié)構(gòu)和編寫
- 長興中學(xué)提前招生試卷
- 安全事故案例-圖片課件
- 螺紋的基礎(chǔ)知識
- 九年級(初三)第一學(xué)期期末考試后家長會課件
- 保健食品GMP質(zhì)量體系文件
評論
0/150
提交評論