管理第三方軟件中的漏洞風(fēng)險(xiǎn)
詢問***信息官關(guān)于應(yīng)用程序安全的問題,很多人都會談?wù)撛趯ψ陨懋a(chǎn)品的漏洞檢查方面作出的努力。
然而在很多情況下,風(fēng)險(xiǎn)并不存在于內(nèi)部開發(fā)人員所編寫的代碼中,而在外部開發(fā)人員提供的組件中,開源庫或者第三方工具包。拿WebKit舉例來說:很多公司知道瀏覽器(例如蘋果的Safari或者谷歌的Chrome)都依賴于WebKit,還有很多其他應(yīng)用程序也同樣如此,例如Entourage 2008, Yahoo!Messenger和Macromedia的Contribute3等。
依賴于第三方代碼的公司將安全交給其他開發(fā)人員的手中,惠普公司企業(yè)安全產(chǎn)品副總裁Barmak Meftah。
“公司通常不會考慮到第三方軟件給他們帶來的風(fēng)險(xiǎn),以及使用開源軟件作為其堆棧的一部分的風(fēng)險(xiǎn),”Meftah表示,“他們假設(shè)供應(yīng)商和開源開發(fā)人員在應(yīng)用程序開發(fā)過程中進(jìn)行了安全檢查,而事實(shí)上,這種假設(shè)是錯(cuò)誤的。”
為了保護(hù)其軟件安全,企業(yè)必須弄清楚哪些代碼組件構(gòu)成了其代碼庫的一部分。***步是對開發(fā)使用的所有代碼進(jìn)行檢查,漏洞管理公司Rapid7公司***安全官兼Metasploit公司總設(shè)計(jì)師HD Moore表示。
“即使開發(fā)團(tuán)隊(duì)非常精通于他們的工作,并清楚他們的產(chǎn)品的樣子,可能也并不會注意到正在使用的后端庫的情況,而這在代碼審計(jì)過程中是需要涵蓋近來的,”Moore表示。
在任何代碼審計(jì)的開始,企業(yè)必須確定他們能夠評估一個(gè)軟件庫,無論是開源還是閉源。如果軟件庫是由第三方開發(fā)人員提供的,那么公司必須專注于合同用語上,包括***步獲得分析該軟件的許可,惠普公司的Meftah表示。
“我們看到在承包條款方面,越來越多的軟件開發(fā)商允許最終用戶對軟件做一些分析,”他表示。
一旦企業(yè)獲得了分析軟件的權(quán)利,開發(fā)人員和IT安全團(tuán)隊(duì)需要做一個(gè)應(yīng)用程序評估,并檢查軟件中存在的漏洞,無論是通過靜態(tài)分析還是通過監(jiān)測開發(fā)商的支持論壇,或者通過跟蹤軟件修改的智能服務(wù)。
然后公司就可以作出明智的決定,是否修復(fù)軟件漏洞,或者如果修復(fù)漏洞不實(shí)際的話,使用運(yùn)行時(shí)分析產(chǎn)品來硬化應(yīng)用程序,以防止任何對關(guān)鍵漏洞的利用。
“任何通過該組件的異?;顒?dòng)都將被跟蹤,”Meftah表示,“只要你硬化了軟件,你可以盡情的使用這個(gè)有漏洞的軟件。”
很多公司存在的一個(gè)問題是,軟件庫的來源可能不是單一的供應(yīng)商,Veracode公司的Wysopal表示。
“你接觸的每一個(gè)第三方可能也有自己的第三方,”他表示,“所以負(fù)責(zé)這方面工作的員工應(yīng)該去詢問他們的第三方供應(yīng)商,他們是如何處理應(yīng)用程序安全的。”
這個(gè)所謂的嵌套第三方供應(yīng)鏈問題可能會隱藏軟件的真正的來源,從而使漏洞修復(fù)變得更加困難。
即使找到了某個(gè)軟件庫可能依賴的代碼組件,企業(yè)仍然需要確定漏洞修復(fù)不會破壞應(yīng)用程序本身。這個(gè)過程 是十分艱巨的,但是對于使用第三方組件的公司又是很必要的,Rapid7公司的Moore表示。
【編輯推薦】