摘要:所有即使是公司制定了最嚴格的代碼安全規范同時每個程序員都有能并完美執行了安全編碼規范,也只能解決最多的潛在問題。大型為了確保安全還可以采用滲透測試和分析公司提出來的一項新興技術,稱運行應用程序自我保護功能。
盡管像銀行、大型電商以及政府等大型機構在確保程序員寫出最安全的軟件上付出了巨大的努力:比如雇傭最有經驗的程序員,使用昂貴的代碼分析工具等等。但是媒體頭條上還是經常可以看到大型組織出現的安全事故。
這的確讓很多企業非常沮喪,管理者都可能在想同樣的問題:為什么付出這么多努力還是不能確保系統安全呢?是什么原因導致這樣的情況發生呢?本文從6個方面來解釋為什么編寫安全的代碼只能解決安全的一小部分問題:
1,確保自己代碼安全只是冰山一角
現代軟件尤其是大型的銀行系統軟件都是由自己的編寫的代碼、開源軟件、第三方提供的組件以及軟件開發框架組成,現在幾乎沒有純粹使用自己的編寫的軟件就能完成一個系統,這無論從軟件思想和ROI方面考慮都是不現實的。研究標明通常一個現代軟件里完全由本公司程序員編寫的代碼只占所有代碼的10%到30%。所有即使是公司制定了最嚴格的代碼安全規范同時每個程序員都有能并完美執行了安全編碼規范,也只能解決最多20%的潛在問題。 這些僅僅只是冰山一角。
2,應用系統大部分代碼安全不可控
根據金融機構的統計數據,大部分銀行最少也有一般的軟件系統都是從第三方買來的,有可能在買來的系統中做一些定制化的修改。這些軟件通常是不提供源代碼,所以企業也很難確保這些買來的軟件的開發過程遵守安全代碼開發最佳實踐。正如我們所看到的,過去兩年,許多知名度非常高的安全事故都是攻擊第三方應用和IT供應量的漏洞。這個趨勢會越來越明顯。
3,想修補了已經為時已晚
在項目啟動就制定并執行最佳代碼安全實踐效果是最理想的,但是不幸的在大部分大型項目開發,等意識到需要代碼安全并制定規范和標準的時候,大部分功能都已經實現了,每個經歷過大型項目的人都太熟悉這個場景了。這個時候想修復想通過重構代碼去修復漏洞幾乎不可能,重構大型軟件需要非常程的時間,這在開發周期和人力成本都是不可承受的,帶病上線是非常正常的事情。這些帶著已知漏洞運行的系統只能寄希望虛擬防火墻補丁甚至是運氣來防止災難性的安全事故發生。
4,代碼安全規范控制非常艱難
現代大型系統都已經告別小作坊的方式,大型系統通常需要很多程序員一起通力合作才能完成,這些程序員的能力,資歷以及性格各方面都有非常大的區別,項目外包也是一大趨勢,還有的大型公司的程序員工作在不同的地域,時區,文化,語言,國家,這些都給代碼安全規范的統一完整實施帶來巨大的困難,代價非常的大。
5,應用程序運行環境也存在漏洞
即使企業有非常強大的整合能力,能確保自己編寫的程序和所有外部購買的程序都沒有漏洞,但是應用程序還是得部署到各種運行環境里,比如 Java 程序需要 JVM,同時需要運行在各種 Web 容器里(比如 Apache Tomcat, WebLogic, JBoss, WebSphere 等等),這些環境漏洞是企業沒有辦法控制的,只能將所用到環境跟新到最新的版本。其他的漏洞只能聽天由命了。
6,每個人都可犯迷糊的時候:
理想來說是每個人在寫每一行代碼的時候都能夠遵循安全編碼的最佳實踐,這個本身就是違背基本規律的,每個人都有犯迷糊的時候,同時項目的進度,排期,以及各個部門的協調都會造成各種錯誤的發生。
盡管我們在這里詳細的描述了僅僅通過安全編碼是不能完全杜絕安全事故發生,但是安全編碼對任何公司都是非常重要的,畢竟安全無小事,公司應該為開發者和安全編碼制定政策和程序,提供安全意識培訓,并結合各種代碼掃描、分析工具,盡可能的減少代碼漏洞的數目,對能承受修復漏洞需要付出的成本的大公司來說還是非常有意義的,它能有效的減少受到攻擊的可能性。
大型為了確保安全還可以采用滲透測試和分析公司 Gartner 提出來的一項新興技術,稱運行應用程序自我保護功能 RASP 。這種方法實現在程序運行時進行安全檢測和保護的能力,對防范零日攻擊和 APT 有非常好的效果。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/11155.html
摘要:目前主要的互聯網金融模式包括第三方支付在線理財網貸直銷銀行互聯網保險及互聯網眾籌等。互聯網金融安全風險蔓延態勢及具體表現據相關機構統計數據顯示,早在年,中國移動互聯網金融呈現爆發式增長,全年交易額超過萬億人民幣。 隨著中國互聯網金融市場的發展、政策試點擴大范圍、央行開放征信牌照、從互聯網巨頭到新興創業公司都開始布局消費金融。特別是隨著移動互聯網的普及和推廣,移動互聯網金融也逐漸成為互聯...
摘要:借助語法樹,開發者能夠更好地展現和修改源程序代碼,優化開發環節,提高安全系數,還能進一步實現安卓預編譯。用語法樹來實現預編譯指令開發者還能用語法樹來實現預編譯指令,常見的預編譯指令主要分為條件編譯宏定義文件包含三大類。 如何在保證安全性的前提下,提升開發過程的效率,是每個開發者都在不斷探索的問題。借助語法樹,開發者能夠更好地展現和修改源程序代碼,優化開發環節,提高安全系數,還能進一步實...
摘要:企業上云企業在擔心什么盤點企業必須面對的七大顧慮眾所周知,企業上云有諸多好處,單是從提高效率節約成本這兩個方面就能為企業節省不少開支。究其原因,在于這些企業對上云存在諸多的顧慮。企業上云企業在擔心什么?盤點企業必須面對的七大顧慮眾所周知,企業上云有諸多好處,單是從提高效率、節約成本這兩個方面就能為企業節省不少開支。但,企業真的如此看待企業上云嗎?如今大部分尚未上云的企業,似乎還處于迷茫之中。...
閱讀 3872·2021-09-27 13:35
閱讀 1069·2021-09-24 09:48
閱讀 2899·2021-09-22 15:42
閱讀 2339·2021-09-22 15:28
閱讀 3145·2019-08-30 15:43
閱讀 2609·2019-08-30 13:52
閱讀 2971·2019-08-29 12:48
閱讀 1451·2019-08-26 13:55