Notarization 機制將大幅減少 Mac 上的惡意軟體

code

Notarization 是針對 Mac 開發人員所提供的自動掃描程式碼服務,用來找出惡意程式碼,如果應用程式中沒有發現惡意軟體,則通過認證。在未來的 macOS 版本中,Gatekeeper 將會確認軟體是否已通過認證。

目前 macOS 使用 Gatekeeper 來阻擋使用者執行自行由網路下載的應用程式。Apple 提供開發者一個唯一 Developer ID,用來簽署其所開發的應用程式。只要有註冊的 Developer ID 簽署,Gatekeeper 就會通過開發者身份鑑別,並信任應用程式,這很難檢測到其二進位檔是否被感染。爲了解決這樣難題,Apple 引入 Notarization 機制,強化管理開發者的應用程式。

Notarization 機制會自動掃描含有開發人員 Developer ID 簽名的應用程式並執行安全檢查。當程式通過檢查且準備發佈時,Apple 會在此程式中標示 ticket,讓 Gatekeeper 知道此程式已通過 Notarization 機制認證。這樣一來,使用者可以更加信任他們所下載的應用程式。

Computerworld 的 Greg Keizer 說道:「Apple 即將針對在 Mac App Store 以外新發佈的應用程式強制審查其程式碼,這只是第一步,接下來就會要求現有的 Mac 軟體同樣地得通過審查。」

現在的使用者似乎太過信任軟體,要不然就是很容易被軟體的廣告說詞所影響。現在的使用者很少去探究應用軟體的程式碼真正在做些什麼。Keizer 回憶道,當他數十年前還在 Oak Ridge National Laboratory 學習 UNIX 時,那些資深 UNIX 專家絕對不會在 Sun / SGI / DEC 工作站上安裝任何沒有附帶原始碼的軟體,一律都是自行編譯原始程式碼,這樣的作法可絕對保證安全。但時至今日,卻很少人這樣做。

自數年前開始,Keizer 便不再因為好奇而安裝自己不熟悉的應用程式。若有需要,他會透過 Mac App Store 下載應用程式。而且他發現,許多工作利用 macOS 附帶軟體就可以完成,根本毋須安裝第三方應用程式。對於 Apple 引進新的 Notarization 機制,Keizer 給予正面肯定,認為這是將來應該走的正確方向。Keizer 引用了 Sophos 的首席研究科學家 Chet Wisniewski 的論述:「也許目前還沒辦法做到滴水不漏,但若少掉這一重保護措施,犯罪分子會更輕易達到目的。」