開源等于安全嗎?

jopen 9年前發布 | 6K 次閱讀 開源

 

今年,汽車圈的那些事占據著媒體頭條,比如 黑客入侵吉普車 、大眾汽車在排放測試上 作弊 , 這說明公眾開始思索汽車的軟件問題,這是前所未有的。有些專家可能會爭辯說,強制這些軟件開源,是一個解決辦法。雖然將這些軟件置于公眾的審視之下是有明顯好處的,但開放代碼這種行為本身,并不能給你帶來保障。就像Sam Liles在一封電子郵件中給我解釋的那樣,開源并沒有阻止“破殼(ShellShock)”漏洞的發生。

Liles教授以前是普渡大學數字取證領域的教授,在那兒工作時,他和他的學生研究過汽車和其他物聯網設備的安全。他說, 多重防御 的思想已經落伍,我們無法再靠多設幾層安全屏障來保護自己。舉個例子,我們的手機和其他個人設備,知道我們的一切:我們去過哪里,和誰聯系過,甚至 何時做愛 。這些設備,以及存在其中的所有信息,已經滲透到我們生活和工作的方方面面。一部被入侵的手機,可以挖出各種隱藏的信息,或者把威脅傳播給與之相連的其他設備。

這些設備的存量本身就是個威脅。“如果發生了安全事件,誰應為此負責?”Liles問。就我們這個問題來說,誰來審查那些代碼?在《大教堂和市集》中,Eric S. Raymond寫道,“只要給予足夠的關注,所有的bug都會顯形”,他稱之為 Linus定律 ,但我們不能指望什么軟件都有足夠的關注度。像OpenSSL這樣成名已久的重要項目都因為缺乏資金而無法預防像“心臟滴血(Heartbleed)”這樣的Bug,那運行在你設備中的你都已習以為常的成千上萬行代碼,又指望誰去審查呢?

2011年,美國國家航空航天局和美國高速公路安全管理局針對豐田汽車意外加速事件進行了調查,結果顯示 并沒有證據表明電子設備的失控能導致大量意外加速 ,但盡管如此,其他研究人員還是找到了能讓汽車產生加速的軟件方法。“如果電源管理單元被攻破,” IOActive 的報告指出," 加速度就會迅速變化,汽車將處于極度危險中。 "毫無疑問,軟件是現代汽車安全的一個至關重要的組件。

然而,像Liles小組所做的那類研究還是不多見的。單純分析軟件是一件困難的事。“系統中幾乎從來不考慮集成一個用于搜集取證的模塊,為了使證據有法律效力,必須要使用逆向工程的手段來取證。”Liles說。此外,物聯網給汽車帶來的威脅在不斷變化,所以我們的研究方向也要隨之改變。“很多陳舊的信息保護手段,安全規則和教條,有時還稱之為科學的東西,都是基于謬見、偽事實和過時的技術概念而來的。”

所以,開源軟件要如何適應這種形勢?無論是否開源,偶發的bug總是會出現,有時還很嚴重。“心臟滴血(Heartbleed)”、“破殼(ShellShock)”,以及開源軟件中其他備受矚目的漏洞都在告訴我們,這就是現實。開源更容易使軟件被惡意利用,而只有在我們能驗證軟件的行為和代碼的意圖一致時,其開放性才能帶來好處。這一點將愈發重要,因為汽車正在變成和我們的手機和移動互聯網服務相連的開放系統。

本文由作者Ben Cotton發表在Opensource.com上: Open source code isn’t a warranty 。經授權,在InfoQ中文站翻譯共享。本文在 Creative Commons BY-SA 4.0 許可證下發布。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!