最近連續(xù)發(fā)生數(shù)起攻擊自由開放源代碼軟件服務器事件,使得開發(fā)人員不得不謹慎應對這種最新局勢。
過去四月來,不明入侵者接連攻破Linux核心開發(fā)小組、Debian Project、Gentoo LinuxProject與GNUProject等專門放置程序與源代碼的服務器。GNUProject更是管理許多Linux與其他類Unix系統(tǒng)所使用的重要程序開發(fā)。接二連三的攻擊事件也讓這些專案領導人紛紛
回頭查看自己的安全。
“這批主要針對開放源代碼服務器與核心開放源代碼開發(fā)服務器的攻擊的確引人側目。”負責GentooLinux源代碼擴散系統(tǒng)的成員CoreyShields表示。“大家擔心的是有人意圖不軌,刻意變更核心軟件,那使用者用到的都是被動過手腳的產(chǎn)品!
雖然微軟的Windows向來是黑客主要瞄準對象,但在開放源代碼模式逐漸成為氣候之后,現(xiàn)在也成了攻擊者覬覦的對象。LinuxOS與其他開放源代碼應用越來越熱門,黑客興趣也跟著大增。即使自認為已經(jīng)做好相關安全措施的開發(fā)人員現(xiàn)在也不禁開始擔心這種趨勢。
“大家都不希望自己是下一個受害者,必須跑在黑客之前做好保護措施才行!盨ambaProject(可兼容于Windows網(wǎng)絡的熱門開放源代碼文件服務器計劃)共同創(chuàng)始人暨開發(fā)人員JeremyAllison表示。
一連四起
12月1日,專門提供Gentoo源代碼下載的一臺服務器(總數(shù)105臺)遭入侵,所幸主要的源代碼數(shù)據(jù)庫并沒有遭到威脅。遭入侵的服務器上所安裝的安全軟件立即偵測到這種攻擊,并做了完整的紀錄。
在此之前,11月份的一起攻擊則瞄準Linux核心(kernel),此次是一位開發(fā)人員的系統(tǒng)被入侵用來當作攻擊踏板,該入侵者利用被入侵的電腦來發(fā)送源代碼給另一臺服務器,若有人安裝該源代碼,便可能遭到攻擊者取得系統(tǒng)權限。該起攻擊事件在24小時便被偵測到。
其他攻擊事件則更為嚴重。入侵者取得進入GNUProject開發(fā)系統(tǒng)Savannah的權限;另一起事件中,四臺用來管理Debian版本開發(fā)與社群作為的DebianProject服務器也被取得完整權限。
兩起攻擊行徑都相當類似:入侵者先取得合法的使用者登入帳號密碼,再利用一個最近被發(fā)現(xiàn)的Linux核心漏洞取得系統(tǒng)所有人的權限。Debian與GNU計劃領導人目前先把系統(tǒng)下線,開發(fā)人員全都無法存取,直至確定安全無虞后才會再開放。
GNU Project表示最近這起攻擊事件,加上稍早三月FTP服務器被侵入事件,導致領導階層開始做些改變以為應對。
新增數(shù)字簽名
“我們預期在Savannah事件后會采取一些行動,”自由軟件基金會法律長EbenMoglen表示,該基金會負責GNUProject,專門提供Unix與Linux系統(tǒng)專用的自由軟件。這些行動包括,專案領導人會強迫開發(fā)人員在所有貢獻的源代碼中做數(shù)字簽名程序,同時也會在公開給大眾的開放源代碼維護系統(tǒng)中新增額外的功能,在接受任何變更前會先檢查開發(fā)人員的數(shù)字簽名。
“我們認為新增數(shù)字簽名是最有效的辦法,可確保我們接受源代碼的完整性。”Moglen表示。
GNUProject將自己所提供的程序稱為自由(free)軟件,因為這些程序在擴散時都得受GNU公共授權書約束,它允許大家變更并自行重新散播軟件,但前提是變更過的源代碼也必須一起擴散出來。其概念是希望借由大眾的共同參與來自由共享、改善、使用軟件。
但批評者認為,這樣的軟件開發(fā)模式也必須付出看不見的代價。微軟信息安全總經(jīng)理GregWood表示,“用在商業(yè)流程上,開放源代碼有其代價,企業(yè)必須自行做好安全檢查,所有流程建立也必須自行負擔!
微軟也有自己的問題。例如,在2000年十月,入侵者便通過某位開發(fā)人員的電腦取得微軟網(wǎng)絡的使用權限。自此之后,微軟發(fā)起信賴運算計劃(TrustworthyComputing),力圖保護軟件與開發(fā)流程的安全性。
開發(fā)人員指出,最近幾起攻擊事件雖然導致不肖份子取得部分電腦的權限,但對于開發(fā)部分并不受影響,因為這些計劃已經(jīng)采取相關的安全措施作為回應。
“最近幾次入侵事件都能很被快發(fā)現(xiàn),主因是主網(wǎng)站多半沒有對外開放,入侵者若在第二層網(wǎng)站進行變更就會被數(shù)個安全機制察覺到,”Linux核心使創(chuàng)者以及現(xiàn)行維護者LinusTorvalds表示。
Torvalds多次改變安全策略。早期還在芬蘭赫爾辛基大學念書時,他將Linux核心版本放在一臺可通過校園網(wǎng)絡存取的機器上,F(xiàn)在,Linux核心服務器則由多道防火墻保護著,并通過SSH加密通訊與加密簽名來確保完整性。
Torvadls現(xiàn)在所使用的開放源代碼核心維護應用是由BitMore所研發(fā),該公司創(chuàng)始人LarryMcVoy強調(diào),每個計劃都應該使用這類簽名(或稱checksums)來確保開放源代碼沒有被亂改。
“若你的信息沒經(jīng)過checksum檢驗,你覺得不會有事,那你就是在自找麻煩。”McVoy說。
包括Debian Project、GentooLinux、SambaProject都已開始采用外部checksums來檢驗文件是否在遭受入侵期間被動過手腳。MandrakeSoft創(chuàng)始人GaelDuval表示,這類技術讓專案維護工作輕松不少。
“安全問題不是始于今日,解決方案也早已存在市場,”Duval說!白钪匾氖窍到y(tǒng)管理員與用戶必須重視安全性!
不怕被動手腳 只怕小蟲
不過Apache軟件基金會的開發(fā)人員JustinErenkrantz則表示開放源代碼的開發(fā)模式其實讓安全問題減輕不少,由于開發(fā)屬于分散式模式,因此還有其他許多信息儲存器(repository)可用來查看主服務器內(nèi)的源代碼是否完整。
“若apache.org遭到入侵,我們可查看每個開發(fā)人員都能與信息儲存器同步化,沒有被加入惡意源代碼。”Erenkrantz表示。
Torvalds也同意這種看法,他表示若核心開發(fā)主服務器遭入侵,開放源代碼社群還是有其他檢驗平衡措施可做補救。
“最重要的是,最后總會被查出來,”Torvalds說,“核心源代碼不斷被復制,我們總是找得出哪里被偷放了不該放的程序!
Torvalds認為,一些簡單的錯誤反而比惡意攻擊者來得可怕。
“我個人比較擔心一些常見的臭蟲,”Torvalds表示,“大部分被發(fā)現(xiàn)的核心漏洞都是一些很愚蠢的小蟲,就像Debian被咬到的那只,而非什么特別厲害的黑客在干壞事。”