(2/10 更新:Sothink Web Video Downloader 已確認是假警報,未含木馬並重新上架)
稍早不久前(2/2 日),Mozilla 從 Firefox 附加元件網站中,移除了一個內含 Windows 木馬的擴充套件「Master Filer」。從此事件中,或許有些人會覺得疑慮,Mozilla Firefox 是不是已經不再安全了?我們以較為安全的理由來推廣 Firefox,是不是已經失去其說服力?更甚之:Firefox 的安全神話是否已經破滅?
Firefox 本身的安全性
對我而言,答案是否定的。相較於市面上最普遍的 IE 而言,Firefox 的安全性仍然遠遠超出其之外,也不輸給其餘網路瀏覽器。我的兩點理由如下:
一、較高的漏洞修補率:上個月駭客透過 IE 漏洞入侵 Google 及其餘公司,導致 多國政府呼籲改用它種瀏覽器 的事件至今仍未落幕;而 Firefox 在 Secunia 公司弱點資料庫的修補率,包含 Firefox 3.0、3.5、3.6 皆為 100%(Opera 10 與 Google Chrome 4 亦同 )在此同時,IE6、IE7、IE8 則為 83%、74%、56%。微軟已承認,此次事件中被使用的 IE 漏洞早在去年九月已發現,修補時程卻排到今年二月,此等疏忽令人無法相信。
二、原始碼受大眾檢視:Firefox 的開放原始碼開發模式,使得程式中每一行指令都能公開在陽光底下讓人檢視,漏洞與弱點更容易被發現,沒有一絲容許作惡指令的空間存在。相較於封閉原始碼的 IE 及 Opera 而言,我更相信其安全性。
套件的安全性
Firefox 最大的特色是透過擴充套件,提供各式各樣五花八門的新功能,如此的自由同時也伴隨著極大的風險而來。如果套件作者心存惡意,不但有能力把 Firefox 搞壞、偷得瀏覽器中你的私人資訊、甚至還能直接破壞電腦中的其餘檔案。
這同時也是使用其餘瀏覽器時,最令人擔憂的地方。試想,要是你用 IE 上網(KKman、PCMan 等使用 IE 核心的瀏覽器亦同),到某個你常去的網站,此時跳出「你必須更新瀏覽器元件,才能繼續瀏覽本網站:確定」,你會直接按下確定安裝嗎?這個訊息是真的嗎?其中被偽造的風險有多大?
在套件所帶來的這個問題上,Mozilla 透過了附加元件網站的驗證與人工的審核,來替大家把關。
當套件作者上傳新的套件或者新版本時,Firefox 附加元件網站會自動進行 12 項測試,包含了一般驗證、在地化測試與兩組安全性測試,包含:不安全 JavaScript 測試、不安全設定測試、遠端 JavaScript 測試、常見函式庫 Checksum 測試、標記程式碼片段、Geolocation 檢查、Conduit 工具列檢查等安全性方面的測試。如果套件中夾帶了已知的有害程式碼、或者因為作者的疏忽導致程式有一些已知的不安全問題,在這一步就會被阻擋下來。(測試過程如下圖,詳細的說明在此)
當上傳的檔案通過這些自動測試後,才能完成上傳動作,成為元件網站的「實驗中套件」。您在安裝這些實驗中套件時,都需要先勾選「讓我安裝這個實驗中的套件」,意義即表示:雖然這個套件已經通過自動測試,但是仍未經過人工檢查程式碼;你最好確定套件作者足以信任。
此次被抓到的兩個惡意套件,從 Google 頁面存檔看來(一、二),就都還是實驗中套件。雖然它們躲過了自動檢查程式,而上到 Firefox 元件網站,但這個檢查程序的弱點,附加元件網站已經完成修正,提昇掃描的能力,也針對網站上的所有套件重新進行了完整測試。
在 Firefox 3.5 新增的附加元件管理員中,可以直接搜索套件並安裝,但無法搜索到實驗中套件,理由也一樣,能避免使用者不慎安裝到可能有問題的套件。
當「實驗中套件」要提昇為正式套件時,套件作者必需先提出申請,接著會有審核者人工檢查其程式碼,確認是否符合公開的條件,包含:已經實驗一段時間、有得到使用者的意見回應、程式碼中無惡意或間諜程式、套件功能不違法、不涉及色情……等(詳細審核項目說明),當審核者確定套件的確是無害且安全無虞的,才會批准其申請,而這個過程每次上傳新版時,都要重新進行一遍。
我個人寫的套件 PlacesCleaner 收藏庫清潔工,第一版從申請到成為正式套件大概花了兩個月,最近幾個更新也都需時一兩個禮拜,每次的審核者都有所不同,也同時確保了審核的品質。
因此,我敢如此說明:如果你從 Firefox 附加元件網站 或附加元件管理員中安裝(非實驗中)套件,都是安全無虞的,也不會有遇到此次這種惡意套件的機會。除非你是從其他網站(論壇、套件作者個人網站)手動下載並安裝套件,才會有危險性。我認為這種從非官方網站安裝套件的動作,能免則免!
瀏覽器元件安全性
Firefox 3.6 中新增了一項功能,在更新時會檢查常見的瀏覽器元件(Plugin)版本,包含了 Flash、QuickTime、Silverlight、Java……等常見元件。如果所使用的版本過舊,檢查頁會顯示出來,建議你下載更新。這些 Plugin 為非 Mozilla 的其他廠商所寫,雖能增添 Firefox 的影音支援等功能,但也常常包含了不少安全性漏洞與錯誤,有時也會造成 Firefox 的當機等問題。例如 Flash 9 釋出至今三年多,也已修正了數十個漏洞,因此隨時保持 Plugin 更新,也是維持上網安全重要的一環。(前往 Firefox Plugin Check 頁面)
結論
針對此次 Firefox 有害套件事件,我所提出的建議是:使用 Firefox 本身的附加元件管理員,或者在 Firefox 附加元件網站 安裝套件;除非您信任該作者,否則請不要輕易安裝實驗中套件;除了 Firefox 附加元件網站及管理員外,不要透過任何其餘網站手動下載並安裝套件(包含 MozTW 的論壇),如此即可享受各式各樣 Firefox 套件的功能,同時將擴充套件伴隨的風險降到最低。
下載與安裝 Firefox 時,請認明 Mozilla 官方網站、MozTW 或 抓火狐網站。除非確認安全,請避免使用各式非官方版的 Firefox。雖然我們推薦大家升級到最新的 Firefox 3.6,Mozilla 仍會持續提供 Firefox 3.5 及 3.0 的安全性更新。Firefox 3.0 以下版本已經進入停止支援狀態,請儘速升級到 3.0 以上版本。
使用者上網瀏覽時的安全性,是 Mozilla 最重視的一環(另一環是開放標準)。每次 Firefox 的更新都會針對安全性進行提昇:Firefox 2.0 的詐騙網站偵測、3.0 的「海關男」網站識別資訊、3.5 的隱私瀏覽模式、3.6 的過期 Plugin 偵測等,在在都強化了安全性並提昇隱私保護。
針對 Firefox 本身的漏洞與弱點,Mozilla 公司與全球的程式設計師,都會在發現的第一時間儘速修補、並釋出安全性更新。因此我敢以 Mozilla 全球社群的一份子、MozTW (Mozilla Taiwan) 成員、Firefox 擁護者及開源軟體愛好者的身份向您保證:使用 Firefox 上網的安全性,仍是毋庸置疑的!
請安心使用,並祝瀏覽愉快。
延伸閱讀:
Security Issue on AMO « Mozilla Add-ons Blog
ZDNet Taiwan - Mozilla 示警 移除有毒外掛
iThome online : 不肖人士利用 Firefox 散播廣告程式及木馬
Mozilla Links 正體中文版: 世界各國相繼建議別用危險的 IE,你換了嗎?!
T客邦 | IE有漏洞事件讓 Firefox 和 Opera 下載量大增
φ 撰文:Irvin,原文以 創用 CC 姓名標示-非商業性-禁止改作 3.0 台灣授權條款 釋出
應該在實驗性套件上加上安全提示
回覆刪除講到不安全JS檢查,Piro為了eval()發文公開抗議(英譯),看來還有得吵…
回覆刪除Firefox 的擴充套件機制已經越來越完備了,根本不是 1.0 時代各自為政時可以想像得到的。有這麼活躍的使用社群,雖然難免有人不小心變成白老鼠,但後續的修補和互助機制都是很豐富的。請記住!Mozilla 不是收錢的企業!而是一個自由軟體使用社群。能做到這樣子,我覺得使用者對「安全性」的苛求也要有個限度才是。
回覆刪除請問為什麼有些套件會出現『繼續下載』
回覆刪除像這的https://addons.mozilla.org/zh-TW/firefox/addon/357/
https://addons.mozilla.org/zh-TW/firefox/addon/11044/
這有通過 Mozilla 的審核嗎?
還有如果Mozilla 的審核這麼安全
那什麼還會出現『NoScript事件』?
a. 「繼續下載」是因為在你下載前有話要說,沒有通過審核的會標示為測試中,也會彈出警告。
回覆刪除b. 因為 Google 也會掛點、梅西也會被抄球。Mozilla 只能說是盡可能做到最好,問「如果 xxx 這麼安全那為什麼會 blah blah」,聽起來真不客氣 XD 沒有什麼叫做絕對安全,您可以選擇自己比較信任的來用,這也是種自由選擇。
我沒有要吵的意思
回覆刪除只是一般使用者根本就看不懂程式碼
而我們又以較為安全的理由來推廣 Firefox
試想如果一般使用者想都沒想就因為『安全』兩個字
就從官網下載套件
而這套件好死不死會偷偷把使用者一些資料上傳
那叫使用者如何是好?而這筆帳又要算誰的?
而且我覺得如果要以安全的理由來推廣 Firefox
因該也要把官網套件也算進去,而不是只有單單Firefox
(如果Firefox不用套件那Firefox就不叫Firefox了)
去年發生了NoScript事件
今年又發生了疑似有內藏來木馬(還好後來確定是假的)
只是想問問到底Mozilla出錯的環節是那裡
我是不知道Chrome的官網套件有沒有像Mozilla一樣有審核機制
只是希望Mozilla審核『人工檢查程式碼』能夠再嚴格點
希望不要出現有心存惡意的作者
希望歸希望還是只能靠Mozilla本身自己
對了現在好像沒有出可以監視套件動作的功能喔??
人工審核,大概是 Review 的人太少吧,因為我只會嘴炮喊喊但沒能力去 review.
回覆刪除然後我個人反對「把套件也算進去」這件事情,使用者必須有所認知、知道自己正在選擇才行(雖然大多都是期待別人把關,這基本上是信仰問題了)。
教導使用者安裝套件時,本來就得說明通過審核的套件才是保證安全的套件,要安裝其他實驗中套件都得自負風險。
回覆刪除