国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于安全軟件開(kāi)發(fā)生命周期的軟件工程

2013-04-29 22:28:13劉湖平曾紹軍王欣
中國(guó)管理信息化 2013年7期
關(guān)鍵詞:軟件工程生命周期

劉湖平 曾紹軍 王欣

[摘要] 利用現(xiàn)代工程的概念、原理、技術(shù)和方法進(jìn)行計(jì)算機(jī)軟件的開(kāi)發(fā)、管理、維護(hù)和更新,即軟件工程的誕生,是計(jì)算機(jī)軟件生產(chǎn)的里程碑。隨著Internet的普及和快速發(fā)展,網(wǎng)絡(luò)安全矛盾日益突顯。只有改進(jìn)傳統(tǒng)的軟件工程過(guò)程,提供更為安全可靠的軟件產(chǎn)品,才能減輕威脅,有效遏制網(wǎng)絡(luò)犯罪。

[關(guān)鍵詞] 安全開(kāi)發(fā); 生命周期; 軟件工程

[中圖分類(lèi)號(hào)] TP311.5 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 1673 - 0194(2013)07- 0065- 03

1968年NATO(北大西洋公約組織,North Atlantic Treaty Organization)在德國(guó)的加米施(Garmish)召開(kāi)的計(jì)算機(jī)科學(xué)會(huì)議,是一次劃時(shí)代的會(huì)議,正是這次會(huì)議誕生了“軟件工程”。它不僅有效緩解了當(dāng)時(shí)日益突出的“軟件危機(jī)”,同時(shí)為其后軟件生產(chǎn)的輝煌奠定了堅(jiān)實(shí)的理論基礎(chǔ)。然而,在網(wǎng)絡(luò)高速發(fā)展的今天,傳統(tǒng)的軟件工程實(shí)踐已無(wú)法實(shí)現(xiàn)安全的軟件開(kāi)發(fā)。只有引進(jìn)新的開(kāi)發(fā)機(jī)制,不斷改進(jìn)傳統(tǒng)的軟件工程過(guò)程,才能生產(chǎn)出更為安全可靠的軟件產(chǎn)品。

1 軟件工程基本概念

計(jì)算機(jī)軟件:與計(jì)算機(jī)操作有關(guān)的程序、規(guī)程、規(guī)則及任何與之有關(guān)的文檔及數(shù)據(jù)。它由兩部分組成:一是機(jī)器可執(zhí)行的程序及有關(guān)數(shù)據(jù);二是機(jī)器不可執(zhí)行的,與軟件開(kāi)發(fā)、運(yùn)行、維護(hù)、使用和培訓(xùn)有關(guān)的文檔。

軟件危機(jī):在計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一系列嚴(yán)重問(wèn)題。20世紀(jì)60年代末至20世紀(jì)70年代初的軟件開(kāi)發(fā),主要依賴(lài)個(gè)人的“才藝”,而軟件功能的需求越來(lái)越強(qiáng),造成軟件質(zhì)量(通用性、可移植性)差、維護(hù)困難。在一定時(shí)間內(nèi),人的智力和體力已無(wú)法承受。簡(jiǎn)單增加開(kāi)發(fā)人員已不能成比例地提高軟件開(kāi)發(fā)能力。為開(kāi)發(fā)和維護(hù)軟件而支付的費(fèi)用已占到設(shè)備成本的40%~75%,開(kāi)發(fā)大型軟件一再延時(shí),因此而產(chǎn)生了“軟件危機(jī)”。

軟件工程:用工程、數(shù)學(xué)的原則和科學(xué)的方法,研制與維護(hù)計(jì)算機(jī)軟件的有關(guān)技術(shù)及管理方法。它由方法、工具和過(guò)程3部分組成。軟件工程方法是完成軟件工程項(xiàng)目的技術(shù)手段,它支持項(xiàng)目計(jì)劃與估算、系統(tǒng)與軟件需求分析、軟件設(shè)計(jì)、編碼、測(cè)試與維護(hù)。軟件工程使用的軟件工具自動(dòng)或半自動(dòng)地支持軟件的開(kāi)發(fā)和管理,支持各種軟件文檔的生成。軟件工程的過(guò)程貫穿于軟件開(kāi)發(fā)的各個(gè)環(huán)節(jié),管理者要對(duì)軟件開(kāi)發(fā)的質(zhì)量、進(jìn)度、成本進(jìn)行評(píng)估、管理和控制,包括人員組織、計(jì)劃跟蹤與控制、成本估算、質(zhì)量保證、配置管理等。

軟件生命周期:軟件產(chǎn)品從形成概念開(kāi)始,經(jīng)過(guò)開(kāi)發(fā)、使用和維護(hù),直到最后退役的全過(guò)程。它包括軟件定義、軟件開(kāi)發(fā)、軟件使用與維護(hù)3個(gè)主要部分。對(duì)應(yīng)軟件生命周期的軟件開(kāi)發(fā)模型是經(jīng)典的瀑布模型(如圖1所示)。它提供了軟件開(kāi)發(fā)的基本框架,有利于大型軟件開(kāi)發(fā)過(guò)程中人員的組織、管理,有利于軟件開(kāi)發(fā)方法和工具的研究與使用,從而提高大型軟件項(xiàng)目開(kāi)發(fā)的質(zhì)量和效率。

2 網(wǎng)絡(luò)系統(tǒng)面臨的威脅

網(wǎng)絡(luò)時(shí)代的互聯(lián)互通給我們帶來(lái)了前所未有的體驗(yàn)與便捷,無(wú)紙化辦公、電子商務(wù)、網(wǎng)絡(luò)通信等,正融入我們的日常生活與工作的各個(gè)領(lǐng)域。大量有價(jià)值的、敏感的數(shù)據(jù)存儲(chǔ)與流動(dòng),使得利益驅(qū)使下的犯罪充斥于網(wǎng)絡(luò)社會(huì)。早在1995年,安全專(zhuān)家Clark和Davis就定義了網(wǎng)絡(luò)犯罪成本效益比率:

MbPb > OcpOcmPaPc

Mb——攻擊者的貨幣收益;

Pb——攻擊者的心理收益;

Ocp——實(shí)施犯罪的成本;

Ocm——攻擊者的定罪成本;

Pa——攻擊者被緝拿和逮捕的可能性;

Pc——攻擊者被定罪的可能性。

當(dāng)不等式的左邊大于右邊時(shí),意味著實(shí)施攻擊的收益大于成本,犯罪即可能發(fā)生。

一方面,如前所述,隨著應(yīng)用的普及,用戶(hù)必然會(huì)存儲(chǔ)、處理大量有價(jià)值的數(shù)據(jù),使得不等式的左邊對(duì)攻擊者來(lái)說(shuō)是“堆放金錢(qián)的地方”,其值(Mb)會(huì)愈來(lái)愈大;另一方面,攻擊者被發(fā)現(xiàn)和追捕的可能性(Pa)微乎其微,同時(shí),網(wǎng)絡(luò)上黑客工具汗牛充棟、唾手可得,實(shí)施攻擊無(wú)需掌握高難的技術(shù),使得犯罪成本(Ocp)愈來(lái)愈小。這樣,使得不等式左邊遠(yuǎn)遠(yuǎn)大于其右邊,導(dǎo)致網(wǎng)絡(luò)系統(tǒng)始終受到嚴(yán)重威脅。

據(jù)國(guó)家互聯(lián)網(wǎng)應(yīng)急中心(CNCERT)發(fā)布的《2011年中國(guó)互聯(lián)網(wǎng)網(wǎng)絡(luò)安全報(bào)告》披露:

2011年境內(nèi)木馬或僵尸程序控制服務(wù)器IP數(shù)量為253 684個(gè),木馬或僵尸程序受控主機(jī)IP數(shù)量為8 895 123個(gè)。

2011年境內(nèi)被篡改網(wǎng)站數(shù)量累計(jì)為36 612個(gè)。

2011年4-12月監(jiān)測(cè)到境內(nèi)12 513個(gè)網(wǎng)站被植入網(wǎng)站后門(mén),其中政府網(wǎng)站1 167個(gè)。

2011年國(guó)家信息安全漏洞共享平臺(tái)(CNVD)共收集整理并公開(kāi)發(fā)布信息安全漏洞5 547個(gè),其中,高危漏洞2 164個(gè)。

2011年,CNCERT共接收國(guó)內(nèi)外報(bào)告網(wǎng)絡(luò)安全事件15 366起。

2011年3-12月監(jiān)測(cè)到仿冒境內(nèi)銀行網(wǎng)站的域名有3 841個(gè);仿冒境內(nèi)銀行網(wǎng)站的服務(wù)器IP有667個(gè)。

《CNCERT互聯(lián)網(wǎng)安全威脅報(bào)告》2012年11月的月報(bào)稱(chēng),僅在1個(gè)月內(nèi):境內(nèi)感染網(wǎng)絡(luò)病毒的終端數(shù)為近466萬(wàn)個(gè)。境內(nèi)被篡改網(wǎng)站數(shù)量為8 253個(gè),其中被篡改政府網(wǎng)站數(shù)量為658個(gè);境內(nèi)被植入后門(mén)的網(wǎng)站數(shù)量為5 462個(gè),其中政府網(wǎng)站有294個(gè);針對(duì)境內(nèi)網(wǎng)站的仿冒頁(yè)面數(shù)量為6 399個(gè)。

國(guó)家信息安全漏洞共享平臺(tái)(CNVD)收集整理信息系統(tǒng)安全漏洞729 個(gè),其中,高危漏洞231個(gè),可被利用來(lái)實(shí)施遠(yuǎn)程攻擊的漏洞有686個(gè)。

據(jù)《瑞星2012年中國(guó)信息安全綜合報(bào)告》稱(chēng):

2012年1月至12月,瑞星“云安全”系統(tǒng)共截獲新增病毒樣本1 181萬(wàn)余個(gè)。

2012年1月至12月,瑞星“云安全”系統(tǒng)截獲掛馬網(wǎng)站516萬(wàn)個(gè)(以網(wǎng)頁(yè)個(gè)數(shù)統(tǒng)計(jì))。

2012年1月至12月,瑞星共截獲釣魚(yú)網(wǎng)站597萬(wàn)個(gè)(以URL計(jì)算),瑞星攔截掛馬網(wǎng)站攻擊的總數(shù)總計(jì)5 097萬(wàn)次。

360安全中心發(fā)布的研究數(shù)據(jù)顯示:

2012年1月至6月,國(guó)內(nèi)日均約2 835.3萬(wàn)臺(tái)電腦遭到木馬病毒等惡意程序攻擊。

2012年上半年,360安全衛(wèi)士共截獲新增釣魚(yú)網(wǎng)站350 149家(以host計(jì)算),攔截釣魚(yú)網(wǎng)站訪問(wèn)量更是高達(dá)21.7億次。

2012年上半年,360安全衛(wèi)士平均每月截獲46.3萬(wàn)個(gè)掛馬網(wǎng)頁(yè)(以URL計(jì)算),攔截掛馬網(wǎng)頁(yè)訪問(wèn)量419萬(wàn)次。

從以上的數(shù)據(jù)分析可知,網(wǎng)絡(luò)攻擊真實(shí)存在,網(wǎng)絡(luò)犯罪令人觸目驚心,在攻擊者的定罪成本(Ocm)和攻擊者被定罪的可能性(Pc)不變的條件下,我們只有在采用技術(shù)的手段同時(shí),增大Ocp以減少網(wǎng)絡(luò)攻擊犯罪。

3 基于安全的軟件開(kāi)發(fā)生命周期

為了應(yīng)對(duì)日益嚴(yán)重的網(wǎng)絡(luò)犯罪,我們必須更新與完善軟件工程的方法、工具和過(guò)程。

設(shè)計(jì)高質(zhì)量的軟件和良好的安全系統(tǒng),加大攻擊者實(shí)施攻擊的犯罪成本。引進(jìn)軟件安全開(kāi)發(fā)生命周期(Security Development Lifecycle,SDL)是目前最有效的手段之一。SDL由13個(gè)階段構(gòu)成(如圖2所示),其目的一是減少軟件中安全漏洞與隱私問(wèn)題的數(shù)量,二是降低殘留漏洞的嚴(yán)重性。

(1) 教育和意識(shí)。通過(guò)對(duì)設(shè)計(jì)師、開(kāi)發(fā)人員、測(cè)試工程師、文檔專(zhuān)員等每一個(gè)與軟件開(kāi)發(fā)有關(guān)的人員進(jìn)行系統(tǒng)、持續(xù)的安全培訓(xùn)與考試,結(jié)合閱讀安全書(shū)籍、發(fā)表安全文章等手段進(jìn)行綜合度量,讓所有參與軟件開(kāi)發(fā)的工作人員牢固樹(shù)立安全意識(shí)、夯實(shí)安全基礎(chǔ)。

(2) 項(xiàng)目啟動(dòng)。該階段的主要工作是組建安全團(tuán)隊(duì)、配置Bug跟蹤管理數(shù)據(jù)庫(kù)并建立Bug標(biāo)準(zhǔn)。

(3) 定義并遵從設(shè)計(jì)最佳實(shí)踐。采用安全設(shè)計(jì)原則(經(jīng)濟(jì)機(jī)制、默認(rèn)失效保護(hù)、完全中介、公開(kāi)設(shè)計(jì)、權(quán)限分離、最小特權(quán)、最少公共機(jī)制、心理可接受度),枚舉軟件受攻擊面的構(gòu)成,有效降低受攻擊面。

(4) 產(chǎn)品風(fēng)險(xiǎn)評(píng)估。該階段完成兩個(gè)方面的任務(wù):一是進(jìn)行軟件安全風(fēng)險(xiǎn)評(píng)估,二是對(duì)軟件涉及的隱私影響進(jìn)行分級(jí)。安全風(fēng)險(xiǎn)評(píng)估一般以問(wèn)卷調(diào)查的形式開(kāi)展,涉及的問(wèn)題主要包括:安裝問(wèn)題、受攻擊面問(wèn)題、移動(dòng)代碼問(wèn)題、安全特性相關(guān)問(wèn)題、常規(guī)問(wèn)題等。隱私影響通常分成3級(jí)。1級(jí)為最高,當(dāng)處理敏感數(shù)據(jù),如收集用戶(hù)個(gè)人信息、不間斷監(jiān)控用戶(hù)行為等情況發(fā)生時(shí)定義為1級(jí)。產(chǎn)品風(fēng)險(xiǎn)評(píng)估的目的是確定在開(kāi)發(fā)軟件時(shí)需要投入多大的資源。

(5) 風(fēng)險(xiǎn)分析。通過(guò)威脅建模,系統(tǒng)地挖掘應(yīng)用中的威脅,對(duì)每種威脅的風(fēng)險(xiǎn)進(jìn)行分級(jí)并決定適當(dāng)?shù)南麥p措施。

(6) 創(chuàng)建安全文檔、工具及客戶(hù)最佳實(shí)踐。該階段完成更為安全的文檔的創(chuàng)建和安全工具的開(kāi)發(fā)。所謂更為安全的文檔就是充分納入了安全信息的文檔,這些文檔包括:①安裝文檔;②主線(xiàn)產(chǎn)品使用文檔;③幫助文檔;④開(kāi)發(fā)人員文檔。安全工具,一般是小巧的工具,如生成器、向?qū)У?,主要目的是幫助用?hù)更為方便且安全地配置系統(tǒng)和使用軟件。

(7) 安全編碼策略。在代碼開(kāi)發(fā)和分析時(shí)必須遵從的策略:①使用最新版本編譯器與支持工具;②使用編譯器內(nèi)置防御特性;③使用源代碼分析工具;④切勿使用違禁函數(shù);⑤減少潛在可被利用的編碼結(jié)構(gòu)或設(shè)計(jì);⑥使用安全編碼檢查清單。

(8) 安全測(cè)試策略。測(cè)試階段要求必須進(jìn)行:①模糊測(cè)試;②滲透測(cè)試;③運(yùn)行時(shí)驗(yàn)證;④重審?fù){模型;⑤重估受攻擊面。

(9) 安全推進(jìn)活動(dòng)。通過(guò)代碼評(píng)審,捕獲安全Bug、分類(lèi),并在工作完成時(shí)修復(fù)它。

(10) 最終安全評(píng)審。在產(chǎn)品交付給客戶(hù)之前所進(jìn)行的最終安全評(píng)審,一般由安全團(tuán)隊(duì)組織進(jìn)行,其主要任務(wù)是:①與產(chǎn)品開(kāi)發(fā)團(tuán)隊(duì)協(xié)調(diào);②對(duì)威脅模型進(jìn)行評(píng)審;③對(duì)未修復(fù)的安全Bug進(jìn)行評(píng)審;④對(duì)工具有效性驗(yàn)證;⑤簽署對(duì)產(chǎn)品是否可發(fā)布給客戶(hù)的意見(jiàn)。

(11) 安全響應(yīng)規(guī)劃。由于無(wú)法實(shí)現(xiàn)軟件產(chǎn)品的絕對(duì)安全,必須制訂相應(yīng)的安全響應(yīng)規(guī)劃,即制訂處置預(yù)案。該預(yù)案一般包括:①接收漏洞報(bào)告;②評(píng)估與分級(jí);③創(chuàng)建修復(fù);④多級(jí)測(cè)試;⑤發(fā)布安全更新等。該過(guò)程由安全團(tuán)隊(duì)與開(kāi)發(fā)團(tuán)隊(duì)共同完成。

(12) 產(chǎn)品發(fā)布。以CD、DVD或網(wǎng)絡(luò)下載等方式發(fā)布產(chǎn)品。

(13) 安全響應(yīng)執(zhí)行。該階段的工作就是一旦有新的安全漏洞報(bào)告,即啟動(dòng)在第11階段制訂的安全響應(yīng)預(yù)案。

與軟件產(chǎn)品本身一樣,其開(kāi)發(fā)方法也是一個(gè)動(dòng)態(tài)的變化過(guò)程。再安全的方法也要由人來(lái)執(zhí)行,保障軟件安全沒(méi)有一勞永逸的辦法,即使SDL也在不斷地改進(jìn)和更新。像傳統(tǒng)的軟件工程帶來(lái)了軟件產(chǎn)業(yè)的繁榮一樣,不斷完善的、基于軟件安全開(kāi)發(fā)生命周期的軟件工程,必將給軟件產(chǎn)業(yè)帶來(lái)質(zhì)的提升與飛躍。

主要參考文獻(xiàn)

[1] 齊治昌,譚慶平,寧洪. 軟件工程[M]. 北京:高等教育出版社,2001.

[2] [美]Michael Howard ,Steve Lipner. 軟件安全開(kāi)發(fā)生命周期[M]. 李兆星,譯. 北京:電子工業(yè)出版社,2008.

[3] 史濟(jì)民. 軟件工程:原理、方法與應(yīng)用[M]. 第3版. 北京:高等教育出版社,2010.

猜你喜歡
軟件工程生命周期
動(dòng)物的生命周期
全生命周期下呼吸機(jī)質(zhì)量控制
從生命周期視角看并購(gòu)保險(xiǎn)
民用飛機(jī)全生命周期KPI的研究與應(yīng)用
企業(yè)生命周期及其管理
依托工作室的軟件工程實(shí)踐教學(xué)研究
應(yīng)用瀑布模型的MOOC制作方法
融合APTECH體系的軟件產(chǎn)業(yè)人才培養(yǎng)探究
基于工程教育認(rèn)證的《軟件工程》課程教學(xué)質(zhì)量建設(shè)研究 
關(guān)于提高軟件工程實(shí)踐教學(xué)質(zhì)量的幾點(diǎn)思考
昭平县| 湖北省| 射洪县| 平定县| 香格里拉县| 吉隆县| 清水河县| 梁河县| 汪清县| 吴川市| 收藏| 海伦市| 砀山县| 永州市| 刚察县| 霍州市| 神池县| 泰宁县| 响水县| 永泰县| 望奎县| 兰坪| 博湖县| 伊宁市| 普兰县| 随州市| 高淳县| 山东| 宜州市| 阳新县| 东城区| 萍乡市| 维西| 江都市| 宁明县| 白河县| 衢州市| 合作市| 新邵县| 荆州市| 杨浦区|