軟件安全設計風險管理論文

時間:2022-04-08 10:54:05

導語:軟件安全設計風險管理論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

軟件安全設計風險管理論文

1軟件安全問題日益突出

隨著互聯網的觸角深入到生產生活中的各個層面,軟件已經不像以前那樣只是支持辦公和家庭娛樂這兩大主題了,而是成為現代商業的靈魂。軟件安全問題主要圍繞著軟件漏洞和易被攻擊脆弱點,它們都來自于軟件的設計和實現。Internet催生了電子商務,移動互聯網使得APP變得如火如荼,未來物聯網也許可以將生活中的一切元素都納入到通信網絡中去。因此軟件安全問題將成為計算機安全的核心,而非防火墻等網絡硬件,或是諸如加密等手段。軟件安全是一切計算機安全性問題的根源,如果軟件行為出現異常,與之相關的可靠性、可用性等方面問題就會隨之暴露。軟件安全問題并不是互聯網出現后才有的,只不過互聯網是目前最容易攻擊軟件的途徑罷了。

2軟件安全的現狀

2.1人們的認知

隨著黑客攻擊的新聞時常見諸媒體,人們對計算機安全問題有了一定認識。但不幸很多計算機安全人員和計算機教育培訓人員都忽視了軟件安全的問題。一味地推崇某種軟件平臺是安全的,單純大力增加對網絡安全硬件和軟件的投入,這些做法是盲目甚至荒謬的。一切安全性都不是靜態特性,也沒有任何軟件是絕對安全的。軟件安全問題的關鍵節點是軟件的設計。

2.2軟件安全設計的先天不足

世界上知名的軟件廠商并不是不了解軟件安全設計安全性的重要性,而是商業模式讓軟件安全方面存在著先天不足。稍縱即逝的商業機會、敏捷的軟件開發過程和短暫的軟件開發周期使得安全性方面的設計在很多時候都是被舍棄的。隨之而來的處理方式則是常見的penetrate-and-pach方法,即不停地補丁。這種做法從長遠來看,其成本與作用遠不及一開始就做好安全性的設計和審計。

3軟件安全設計應引入風險管理

從項目管理的角度看,風險指損失或損害的可能性。軟件項目涉及到的是:項目中可能發生的潛在問題和它們如何妨礙項目成功。風險管理則是對應軟件項目生命周期內的風險的科學和藝術。軟件安全性的設計與軟件設計的其他一些質量性能是互相抵觸的,例如冗余性、高效性。而軟件開發過程中的風險管理與軟件開發的諸如時間、范圍、成本等因素也是相互抵觸的。但是絕不能因為這些可能發生的抵觸行為而放棄對安全性和風險管理的考慮,反而應該將軟件安全性設計納入到風險管理的范疇中去。事實表明,93%的失控項目都忽視了風險管理。

4軟件安全設計風險管理的實施

目前國際上對軟件安全方面的風險管理存在著一個共同的認知,那就是采用高質量的軟件工程的方法論可以在一定程度上解決這方面的問題,歐美一些國家也在試圖制定或修訂相關的一些“通用準則”來指導軟件安全性設計的實踐。但是這只是從科學技術方面做出努力,我們可以學習借鑒。而在管理技術和藝術方面需要做出的努力則應該嘗試本地化做法。完整的風險管理的過程應該包括以下幾個環節:風險管理計劃的編制、風險識別、風險定性分析、風險定量分析、風險應對計劃編制和風險監督控制。將整個流程都走完的項目和企業都不多,一般來自于所謂的學院派。而時下大多數國內外企業的做法是將這個7個流程簡化為誰來識別風險、誰來對風險負責這兩個環節。原因則是上文所提到的先天不足所致。從技術上講,風險管理的效益來自于潛在風險最小化和潛在回報的最大化。而這個技術的應用則一定需要經歷風險定量分析的過程。在這個過程中,可以使用的主要技術是決策樹分析、蒙特卡羅分析、PERT分析等等。這些技術都是建立在一定的數學和會計基礎之上。而令人遺憾的是,很多決策者本身對這些技術的認知或理解欠缺,以至于會抵觸這種方法。大多數做法是采用小團隊開發小軟件的做法,即采用訪談和敏感性分析來幫助風險定量分析。然而我們并不是要反對這種簡化做法,只是一定不能在簡化的做法之上再次簡化或敷衍了事。首先要做的工作是做好需求管理,在建立一組需求輸入的時候,一定要將安全性作為一個重要需求考慮進去。有一個比較好的方法是,在軟件設計時采用螺旋模型,需求的輸入可以在螺旋模型的各個生命周期中進行,而有關安全性的需求輸入則最好是在最初的一個螺旋中進行。之后要做的工作是確定最大風險。不可避免的要使用風險定性和風險定量分析的各種技術和方法。這個工作一定要有軟件設計師、項目決策者和用戶的參與,采用頭腦風暴和專家訪談是不錯的選擇。而這個工作恰恰是現實生活中中小企業乃至客戶最容易忽略的。企業要考慮成本問題,而客戶的參與往往難以落實,認為軟件的設計和開發應該由軟件公司負責,客戶付款只關心最后軟件是否可以使用。而一旦由于軟件安全性問題造成了一定后果后將演變成各種糾纏不清的官司,這是企業和客戶都不想看到的結果。

5結語

軟件安全問題并非無可救藥,軟件安全設計的靈丹妙藥是將風險管理深入到軟件生命周期的各個時期中去,而且越早越好,利用科學的軟件工程和項目管理的技術,構建安全的軟件基礎框架。軟件企業和客戶都應該提高對軟件安全設計中的風險管理的重視。

作者:李建輝單位:湘西民族職業技術學院