iPhone這個大漏洞,讓人打開App就被盜刷一萬五
就在近日,有網友在社交平臺上分享了自己親人被 App Store 應用商店里的 “騙子 App” 騙走了一萬五千元的事情,而這則消息也引發了網友們的熱切討論。那么,造成這起事件發生的背后原因有哪些?一起來看看作者的分析。
眾所周知,蘋果一直在宣傳自己的安全、隱私、可控。
而且在過去,它也足夠的安全。
但世界上也沒有絕對堅固的墻,大家也別因為這樣,就徹底放松警惕。
因為昨天,它就翻車了。
事情是這樣的,一個網友的丈母娘被 App Store 應用商店里的 “騙子 App” 騙走了一萬五千元。
直到目前,他們被盜刷的錢都沒能追回。
而我在復盤完事情的完整經過之后發現,其中兩個重要環節,都是蘋果出現了問題。
但凡蘋果在這兩個環節中的任何一個環節有安全措施,也不至于讓騙子得逞。
先跟大家聊聊大概發生了什么事吧,大家可以先看看原博主 airycanon 描述的事情經過~
簡單來說,就是 airycanon 的丈母娘從 AppStore 應用商店里下載了一個菜譜 App。
但是這個 App 本身有問題,打開 App 之后,首先會彈出一個 Apple 賬號登錄界面。
用過 iPhone 的小伙伴都知道,不少 App 都支持使用蘋果賬號一鍵注冊登錄,就像微信小程序一鍵登錄一樣。
所以這一步看起來是合理的。
但其實,真正的蘋果一鍵登錄界面,是這個樣子的:
大家可以上下對比看看。
菜譜 App 彈出的那個“假登錄界面”,其實也是有用的,它在后臺已經完成了一次蘋果賬號登錄。
至于有什么用途,我們放到后面再說。
登錄彈窗之后,這個 App 又彈出一個仿照系統界面設計的密碼輸入界面。
因為長得和安裝應用時候的密碼驗證界面很像,手機用的不那么靈光的老人還是很容易中招的。
App“L”eID……
自此,騙子就搞到了受害者 iPhone 的賬號和密碼。
假如用戶給蘋果賬號綁定了支付方式 —— 就比如 airycanon 的丈母娘綁定了微信免密支付……
那騙子就可以開始盜號刷刷刷了。
u1s1,這個騙子絕對是個慣犯。他為了避免受害人收到短信交易提醒,盜刷之前甚至還利用查找 iPhone 遠程把受害者的手機給重置恢復出廠設置了。。。
這要是沒用 iCloud 備份相冊的人,不得氣瘋了……
真·砂仁豬心。
OK,事情大概就是這么一回事,講道理,看完之后我整個人就是一個大寫的懵。
首先,我倒是理解這種騙人 App 能堂而皇之在蘋果官方 App Store 上架。
因為騙過蘋果商店審核的操作在業內根本不算什么秘密。
馬甲包、同 ID 雙版本、幸運按鈕……黑產總有辦法。
比如我也在 App Store 里下載了幾個菜譜大全,他們倒是沒有盜我的密碼,但是點開以后也都不是菜譜。
而是一個個關不掉的強制彈窗,“ 幫 ” 我開各種彩鈴包、權益合約包……
難得遇到了一個正經菜譜 App,結果剛看了兩個菜,就要收我 28……
不對,是每周 28 塊錢……
我估計正經廚房類 App 的產品經理們都得看傻了:同行們黑心錢都這么好賺的嗎?
“非強制消費”:
但是,就算 App 能通過釣魚的方式騙到受害者蘋果賬戶的密碼,但是蘋果本身是有 “兩步驗證 ” 機制的呀?
在登錄新設備或者瀏覽器的時候,除了輸入密碼,蘋果還會要求輸入一個短信驗證碼。
而且 airycanon 也在帖子里說明了,他丈母娘的 Apple ID 已經開啟了兩步驗證。
但是他們自始至終沒有收到蘋果的驗證碼。
這時候他發現,丈母娘賬號的兩步驗證設置里,多出來了一個從來沒見過的境外號碼。
怪不得自己手機上沒有驗證碼了,因為接收驗證碼的手機已經變成騙子的手機了。
考慮到設置兩步驗證是一個挺復雜的操作、即使手把手跟丈母娘說都不一定能設置成功。
那這個號碼只能是騙子偷偷添加進來的了……
這就很離譜了好吧,因為雖然“菜譜騙子”們騙過了蘋果的 App 審核,但它們最多也只是詐騙,是在玩弄社會工程學,而不是病毒。
理論上來說,它們根本沒有辦法繞過蘋果最根本的安全措施,在不彈任何驗證碼的情況下往蘋果的雙證驗證系統里加入能收驗證碼的新手機號。
這一點是我和編輯部小伙伴們都感覺非常詫異的,也是今天關注到這件事的網友們討論最激烈的。
不過在一段討論之后,研究蘋果開發的 BugOS 技術組提到了一種可能的思路:
上面截圖里的內容大家看不懂沒關系,簡單來說,蘋果瀏覽器框架的安全策略出了問題。
事情大概是這么回事:我們都知道,不管是 iPhone,還是安卓手機,系統里都會有一個預裝的默認網頁瀏覽器對不對。
比如 iPhone 上就是 Safiri,安卓這邊則是各家的自帶瀏覽器。
但這其實只是表面上的瀏覽器。
但其實,再往系統底層找,還有一個“沒有圖標”的瀏覽器框架:WebView。
這個 “ 瀏覽器框架 ” 不能被普通用戶在手機里直接點開,它存在的意義,是供其他 App 調用的。
我們舉個例子,就比方說美團、滴滴他們經常在 App 里搞領券的活動,對于這種臨時的活動頁面一般就是寫個網頁。
這些 “ App 內的網頁 ”,實際上都不是 App 本身在渲染,而是美團和滴滴拉起了系統里的 WebView 組件來進行渲染的。
這個組件其實幫了開發者很大的忙,假如沒有 WebView 瀏覽器框架的話,包括美團和滴滴在內的所有 App 開發者,都得往 App 里再額外集成一個獨立的瀏覽器內核。
本身現在的 App 們就已經很占存儲空間了,要是一人再背一個 Chrome……
畫面太美了,我不敢想!
另外,作為網絡世界的窗口,瀏覽器漏洞本身也是很多黑客行為的突破口。
系統本身提供一個全局自動更新的瀏覽器框架,也可以避免一些 App 不更新內置的瀏覽器內核,導致黑客趁虛而入。
這次的問題,恰恰就出在這個 “為了不出問題” 而設計的系統級瀏覽器框架上。
不知道大家有沒有體驗過系統瀏覽器的 “便捷單點登錄” 功能。
就比方說,假如你在 Windows 電腦上使用自帶的 Edge 瀏覽器打開微軟賬戶官網,Edge 瀏覽器不會讓你輸入微軟賬戶的賬號密碼。
而是會自動讀取當前電腦里登錄的微軟賬戶,然后幫你在瀏覽器網站里完成登錄。
假如你在登錄了谷歌賬號的安卓手機上使用谷歌 Chrome 瀏覽器,它也會自動幫你完成登錄操作。
蘋果也是如此,假如你在 Safari 瀏覽器里打開 Apple ID 官網,并點擊登錄。
瀏覽器也不會讓你輸入密碼,而是直接彈出來一個登陸操作的確認框。
假如你點了 “繼續”,得益于高性能的蘋果 A16 處理器,系統會光速彈出 Face ID 驗證。
一個眨眼的功夫,就登錄成功了。
誒,等會兒。
這個登陸框,怎么有點兒眼熟?。???
為什么 “ 菜譜大全 ” 會請求登錄 Apple ID 官網?。???
說真的,假如沒有對比的話,菜譜大全的操作很容易會被大家當成是普通的 “ 一鍵注冊賬號 ” ——
包括發帖的 airycanon 也沒反應過來,以為是丈母娘沒有選蘋果的隱私郵箱登錄選項才暴露了 Apple ID,讓黑客掌握了信息。
真正的一鍵注冊環節會要求選擇是否隱藏郵件地址:
實際上,當這個確認窗驗證完畢之后,騙子都已經準備好往賬號里加料了。
“菜譜大全” 之所以能夠一鍵登錄,恰恰就是利用了 WebView 這個系統級瀏覽器框架的 “便捷登錄” 特性。
表面上,是一個菜譜 App,而在它的內部,隱藏了一個正在訪問 Apple ID 官網、并準備篡改用戶接收驗證短信手機號的瀏覽器界面。
我后來看 BugOS 技術組又發了一個微博,他們已經用自己寫的代碼還原完整個攻擊過程了。
按照蘋果 Apple ID 官網目前的安全邏輯,只有一開始的賬號登錄環節需要下發驗證碼做雙重驗證。
而這最開始的一步,騙子已經通過 WebKit 的便捷登錄繞過去了。
已經處于登錄狀態的情況下,只要輸固定的賬號密碼,就可以直接添加新的驗證手機了。
現在相信大家已經徹底搞明白背后是怎么一回事兒了,這時候我們再重新回看故事的全貌:
“菜譜大全” 先是在表層界面的下面,隱藏了一個 WebView 瀏覽器組件,然后利用它系統級的 “便捷登錄” 能力,進入了 Apple ID 官網。
接著,它給用戶彈出了一個密碼輸入框,用來搞定添加驗證手機的最后一步障礙。
拿到密碼之后,App 就會偷偷跑起添加新驗證手機的自動腳本,這時候受害者的蘋果賬號就已經不屬于自己了。
什么時候發起攻擊,全看黑客心情了。
OK,復盤完畢,這么一看好像還是受害者太傻,平白無故把密碼交出來了對不對 —— 假如受害者打死不填密碼,黑客也沒招。
我們不應該罵蘋果對不對?
emmmm,在下這個結論之前,我想先帶大家看一看蘋果的老對手 —— 谷歌是怎么做的。
和蘋果 Apple ID 一樣,只要已經處于登錄狀態了,谷歌這邊的賬號系統要想添加新的驗證手機,也只是輸一下固定密碼的事。
但是和蘋果不同,谷歌根本不允許系統的 WebView 組件使用 “便捷登錄” 技術。
我在自己的安卓手機上做了個小測試,分別使用谷歌 Chrome 瀏覽器和 Via 瀏覽器( 一款直接調用系統 WebView 框架的極簡瀏覽器 App )訪問谷歌賬號官網。
Chrome 瀏覽器因為已經獲取了系統里的賬號登錄狀態,因此直接就登錄了。
Via 瀏覽器則沒有這個能力,需要一步步重新輸入賬號、密碼、驗證碼。
換句話說,假如有騙子想在安卓手機上做一個同樣套路的事,第一步就卡住了……
但是在蘋果系統里,不管是調用 WebView 的 Via,還是真正的自帶瀏覽器 Safari,都能調用便捷登錄。
再搭配上 App Store 的審核漏洞,一鍋好菜就出爐了……
嚴格來說,這對于 iOS 系統來說也算是一個漏洞 —— 它不是代碼漏洞,而是一個邏輯漏洞。
騙子利用蘋果開放的便捷登錄能力,偽裝了自己一波,再利用一點點社工技巧,就把錢騙到手了。
由于系統邏輯漏洞造成的問題,正確的解決方式應該是著手準備 OTA 補丁,同時幫著受騙的用戶追回損失。
不過蘋果給這個受害者帶來的感知,并不是很好……
可能現在時間還比較短,希望蘋果后續可以幫這個受害者妥善解決。
不瞞大家說,本來我今天是沒打算寫這篇文章的。
因為真要細究的話,安卓這邊雖然把 WebView 的洞補上了,但是其他的漏洞更多、騙人的方式根本數不過來。
蘋果生態總體來說都還是更安全的、讓人用著更放心的,但是大家不要因為它 “安全” 的標簽就變得麻木、不重視安全了。
就像大家都說沃爾沃安全,但你不能因為這點就不握著方向盤了。
相信很多給家長買 iPhone 的小伙伴,都是希望家長盡可能不被騙。
但我覺得,我們還是要告訴他們即便是 iPhone,即便是 App Store,也不能保證絕對安全。
不隨便輸密碼、不給所有 App 用一模一樣的密碼是最后的底線。
千萬記得叮囑他們,免密支付能不開就不開。如果開了的話,免密支付的卡里面也不要放太多的錢。
圖片、資料來源:
IT之家:蘋果 iPhone 曝光重大漏洞,Apple ID 開啟雙重驗證仍被盜刷。
V2EX:@ airycanon
新浪微博:@ BugOS技術組
米羅的 iPhone
作者:米羅,編輯:面線,大餅
原文標題:iPhone今天這個大漏洞,讓人打開App就被盜刷一萬五
來源公眾號:差評(ID:chaping321),Debug the World。
本文由人人都是產品經理合作媒體 @差評 授權發布,未經許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協議。
該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務
學習了