iOS 的封閉式架構不大容易中毒,相信這是大家普遍的認知,即使 iPhone 有相較之下少很多的漏洞,但一不小心,還是會被駭客精心設計的圈套給騙了。今天要跟大家介紹的這個安全漏洞就是如此,原理很簡單,但又難以辨別,如果真碰上了相信 90% 以上的用戶都會被盜走帳號密碼,不得不謹慎提防。
一位資深開發者 Felix Krause 前些日子公佈了一個 iOS 漏洞,當你在使用某個 App 的時候,會突然跳出一個視窗,要你輸入密碼登入 iTunes。但這個視窗是個「釣魚」訊息,一但輸入密碼後,就會被駭客擷取。
什麼是「釣魚」?
「釣魚」與「入侵系統」本質上不大相同,所謂「釣魚」是透過假造的網頁(Facebook、Google登入頁面等等),讓使用者誤以為是官方的網站而輸入帳號密碼,類似的做法也常見於偽造的釣魚信件等等。一些比較粗製濫造的釣魚網頁從外觀上就看得出來,更謹慎的使用者只要仔細檢查網址,也可以發現並非原本的官方網站。
但,這次 Felix Krause 公布的漏洞真實性更大,更容易誘人上當,而且幾乎分辨不出差別。
出現了更加逼真的釣魚訊息
這個漏洞的方式非常簡單,只要是 App 開發者,都可以在原始碼中使用「UIAlertController」框架並跳出一個視窗,這是蘋果給開發者使用的正當工具。然而,只要駭客們在視窗上寫上跟 iOS 系統訊息一模一樣的文字,使用者根本分不出差別:
▲ 上方左圖是正常的系統訊息,右圖是開發者偽造的視窗,根本分不出差別。
由於蘋果給開發者自訂視窗內訊息的權限,而外觀又跟系統訊息毫無區別,因此只要駭客一字一句地模仿系統訊息,一般使用者就分辨不出差異。一但輸入密碼,訊息就可以立刻被駭客得知。
幸好,這個手段目前還沒有發現被駭客使用的案例。Felix Krause 即時發現並公佈了這個釣魚方式,期望人們和蘋果能正視這個問題並盡快作出改善。
如何防範這類釣魚訊息?
要如何分辨這個訊息是真的系統通知,還是駭客仿造的呢?其實有個簡單的方法。
由於 iOS 系統限制的關係,由開發者製作的彈跳通知只能出現在 App 裡。因此當你看到這類訊息,又無法確定是否是偽造的,只要按下 HOME 鍵,看看這個訊息視窗會不會跟著消失就好。若視窗跟著 App 一起消失,那就是假的;若按下 HOME 鍵後視窗還在,就是真的系統通知。
當然,更安全的做法是「只下載可靠的 App」,不要去 App Store 下載來路不明的第三方工具,要用 Gmail 就用 Google 自己推出的 App,要用 Facebook 就用官方的產品。在下載小工具、遊戲等等軟體也盡量選擇可靠的大廠發行的作品。
蘋果也有義務改善
當然,「彈跳視窗」是蘋果給開發者的工具,可以用於顯示重要的訊息,這點是沒有問題的。但蘋果應該要在之後的更新中修復這次漏洞,至少讓視窗的外觀與系統通知不同,好讓使用者作出區別。
雖然蘋果在 App 上架的審核工作上做得還算嚴謹,但畢竟是人工審核,難免會有漏網之魚。因此呼籲蘋果要在界面上作出調整,或是限制開發者在調跳視窗上輸入訊息的權限。
在那之前,大家還是養成良好的使用習慣,就不用擔心駭客的釣魚訊息了。