先有雞還是先有蛋?應用程式開發與安全

在以前,2013年被認為是「資料外洩的一年」。這或許是大錯特錯。2014年到目前為止,僅僅在美國,有紀錄的外洩事件就有 600 起。這是個全球性的問題,需要更多的投資和能見度。近期所披露的 JP 摩根和可能的其他幾個美國銀行網路防禦被攻破的確十分驚人。

許多焦點都放在攻擊者身上:他們來自哪個國家,攻擊背後有什麼動機。是國家行動、金錢導向還是駭客主義者?有內賊或承包商疏忽嗎?是中國還是俄羅斯?這些攻擊以前所未有的程度發生。大多數入侵滲透發生在沒有被適當修補的使用者電腦或伺服器。這本質上是因為應用程式開發時,在設計和程式碼裡少了一些必要的安全性考量。臭蟲被創造,發現,隨後被用在攻擊上以進入你家或是工作的組織。應用程式是個閘道。單靠網路安全不能保護你免於別人攻擊你的應用程式。

我們從行動電話或網頁所體驗到的迷人功能大多數來自於巧妙設計和開發的應用程式。這改善了我們在個人和工作中的動作和互動的方式。然而,如果做得不好,應用程式也會提供單一的最大攻擊面來讓惡意份子進入我們的住家和組織,讓他們有辦法去找尋、攻擊和掠奪我們的無價珍寶和關鍵資料。

在過去十年間,我們看到平台有著很大的變化。這些動態的生態系包含了網路銀行,社群媒體,甚至很快就會加入無人自動車。美國有四個州(加州、佛羅里達州、密西根州和內華達州)已經開始進入法律作業來讓像通用汽車、Google和Tesla等公司開始將這些神奇的技術帶到街上。

這些新的發展會改變我們與我們愛車互動的方式,將我們對物流的觀念帶到新的領域。這些技術在硬體平臺上運行,但背後的驅動邏輯的是應用程式設計,以及設計師和開發人員的聰明才智。Tesla執行長 – Elon Musk甚至認為到了 2015年,他們的車子有百分之九十會有自動駕駛的能力。Musk也宣佈他會開放智慧財產權以提供給創新所用。防護網路應用程式將會是Tesla的首要工作,也是其他汽車製造商的。

應用程式安全在需求和設計過程是至關重要的。想要事後彌補或上緊螺絲是不可能的。品質並不只是確保一切工作正常。也要確保讓你的使用者有可信賴的體驗和建立信心。工程師所需的訓練不只是念資訊系時的網路應用程式安全相關課程,還包括在其職業生涯中不斷發展的新攻擊手法。企業必須投資訓練他們的開發人員,讓他們保持最新技術來將安全性設計入他們的應用程式。像Jeff WilliamsDave Wichers這樣的先鋒已經挺身而出來帶動這領域內的觀念和行動。我在2005年第一次用來訓練我們的開發人員關於這個非常重要的概念。

我認為最近許多的網路攻擊頭條新聞掩蓋了一個事實,就是攻擊者而開的大門通常是來自不正確編寫的應用程式。開放原始碼或專有程式 – 並沒有差別。組織需要將安全心態深深地帶入他們的 SDLC(軟體發展生命週期) 以確保臭蟲和漏洞的存在最小化。臭蟲是會有,但其關鍵影響必須最小化。將弱點掃瞄加入你的IDE(整合式開發環境),以及針對你所有的開發環境(開發、測試、品保、使用者接受測試和正式上線)進行安全性弱點掃描。最後,尋找有較強滲透測試平台和程序可以協助的組織或工具。這樣子,當你繼續進行整個生命週期時,也可以確認整個應用程式是健康的。最終你會提升你所提供給使用者和客戶的產品。

我們可以辯上一整天 – 到底先有雞還是先有蛋。然而,當提到應用程式開發安全與網路/周邊安全時,以我個人淺見,什麼比較先是毫無爭議的。

@原文出處:Chicken or the Egg? Secure App Development作者:JD Sherry(趨勢科技技術和解決方案)

FB_banner0331-2