還記得 疑似置入行銷的 「iMessage 超安全!」 新聞嗎? Snowden 爆料 NSA 透過科技大廠監聽之後, 蘋果甚至還 公開聲明: 「比方說, 如果你採用 iMessage 或是 FaceTime 對話, 這些對話都是從頭到尾加密的 -- 只有對話雙方能夠看見其內容。 就連蘋果都無法解密。」 但事實是: iMessage 的詭異設計, 讓 「掌握網路架構的單位/人士 E」 可以把自己安插在 D 與 B 兩人的對話當中, 面對 D 時假裝自己是 B, 面對 B 時又假裝自己是 D, 不只可以監聽, 還可以捏造對話。 這種攻擊方式叫做 中間人攻擊 (Man in the Middle Attack)。 巧的是, 日前行政院發到全國公教單位的 「行動裝置資通安全注意事項」 公文當中所大力推薦的 Mobile Device Management (MDM) 技術, 正好讓各單位的網管人員握有 「對 iMessage 進行 MitM」 所需要的一切條件。
法國資安公司 QuarksLab 公司兩位專家 "Pod2G" (Cyril Cattiaux) 跟 "GG" 逆向工程分析蘋果電腦號稱極安全的 iMessage, 並且展示如何監聽甚至捏造對話, 也證實了蘋果的宣示根本是誤導消費者。 日前他們在吉隆坡的 Hack In The Box 會議上, 逐步展示如何攔截兩部 iPhone 之間的 iMessage 對話。 新華網中文報導: 安全人員聲稱:蘋果公司可以解密iMessage。 英文報導: The Verge、 Mac World。 大推 zdnet 這篇, 連結最豐富、 重點最精確。
首先, 破解者在 部落格文章 裡面就開宗明義地強調: 他們的研究只證明蘋果 有能力 攔截你的 iMessage, 但並沒有指控蘋果 已經或正在 這麼做。 蘋果電腦最新的 否認聲明 只是更加證實了 Cattiaux 指出的安全漏洞是存在的: 「這一研究討論了理論上的可能性...但蘋果壓根沒這個打算。」
以下大部分 (還有上面的截圖) 摘要自 簡報檔。 沒錯, iMessage 兩造之間的對話, 確實採用公開、 經過資安專家檢驗的 RSA 與 ECDSA 演算法加密。 但是在一般正常的 非對稱式加解密 架構裡, 全世界的人都可以看見全世界的人的公鑰, 這樣發話者才能確認自己是在跟誰講話。 奇怪的是:蘋果本身在處理 SecureBoot 跟開發者憑證時, 至少都會如此確認身份(p.10, "certificate pinning"); 但在處理 iMessage 時, 蘋果電腦不僅幫發話者把收話者的姓名電話等資訊轉換成公鑰 (這樣做有道理, 因為這樣用起來比較方便) 甚至還有點刻意地 不讓通話者看見彼此的公鑰。 (p.77) 就連我這個非資安本行也不可能設計出這種完全違背 「消費者資安保護原則」 的架構; 而蘋果竟然會這樣設計, 你不覺得可疑嗎? 我個人的判斷是: 這一點都不像是不小心造成的漏洞, 反而比較像是刻意安置的後門。
總之, 這也造成了簡報中所指出的漏洞: 如果有人入侵蘋果管理 iMessage 的伺服器, 那麼當他面對發話人時, 便能夠用自己的公鑰取代收話人的公鑰 (也就是假扮成收話人), 然後轉過身來面對收話人時, 又可以用自己的公鑰取代發話人的公鑰 (也就是假扮發話人)。 他可以捏造對話 (如簡報截圖所示); 但是更可怕的可能是: 他可以不動聲色地坐在兩造當中完全不失真地傳遞資訊, 這樣兩造更不會懷疑遭到監聽。 此外, MitM 攻擊者還可以直接看到對話雙方的 AppleID 密碼。 (p.11) (一般正常做法是僅傳遞 hash 過的密碼。) 以上這一切, 都不需要取得兩造的私鑰。
如果入侵者可以這麼做, 那麼蘋果有沒有能力這麼做? 對照先前蘋果的聲明, 如果照字面的意義去解釋, 你可以說 「連蘋果都無法解密」 這句話並沒有說謊; 但是蘋果並沒有告訴你: 它有能力假扮通話的對方, 不需要解密就可以直接取得你們對話的內容。
不過, 姑且讓我們對這個可能性視而不見、 暫時繼續假裝蘋果電腦很善良、 假設它本身不會這麼做吧。 駭客想要入侵蘋果電腦伺服器, 應該沒那麼簡單對吧? Pod2G 跟 GG 指出: 再一次採用類似上述的 「假扮」 技巧, 駭客根本就不需要 入侵 蘋果電腦的伺服器, 只需要 把自己安插在 用戶與蘋果電腦之間, 或是直接 假扮成 蘋果電腦的伺服器就可以了。 需要有多大的權限才能做這樣的事? (69 頁到 73 頁, "III.4.APPLE BYPASS") 基本上就是掌握網路的那個人或那個組織。 誰能掌握全球的網路? 當然是 NSA。 (而且已證實 NSA 確實躲在全球骨幹網路底下監聽)。
如果只有 NSA, 那也就罷了, 反正我們上至總統府國安局, 下至各個卓越大學, 還不是繼續使用 安裝有 NSA 後門的微軟 Windows :-) 在現今大學評鑑的架構之下, 資訊教授 (含電算中心主任) 最重要的任務是衝高各種數字績效 -- 例如論文點數或學生證照數 -- 而不是關心時事、 保護大家的資訊安全, 這是我們全國的共識, 對吧?
問題是: 符合 「攔截 iMessage」 要件的 , 不只是 NSA。 如果你是公司的網管, 再加上一點點額外的條件 (下詳), 你就可以攔截 iMessage 的對話。 如果對話雙方的 iPhone/iPad 都座落在你管的區網之內, 那麼你就可以扮演圖中 Evil 的角色; 如果對話雙方當中至少有一方的裝置落在你的管轄範圍之外, 那麼你只好把訊息乖乖地交給蘋果處理。
網管還需要什麼樣 「一點點的額外條件」? 你必須要能夠在公司員工的 iPhone/iPad 上面安插一個假的憑證, 讓那部機器相信你所架的監聽伺服器就是蘋果的伺服器。 如果貴公司/貴機關/貴校的主管響應 行政院的呼籲, 大力推動採用蘋果的行動裝置及 MDM 技術, 那麼你甚至不需要逐隻手機設定, 只需要把這一小小個憑證透過 MDM 廣播到員工的行動裝置上, 就 Bingo 了! 報告指出: (p.12-14) 事實上, 你的裝置必須曾經被 iPhone Configuration Utility 碰過一下, 才會顯示 「已認證」, 而這個東東恰好會在你的裝置裡默默地安插一個(不知名的?)憑證。 這裡我沒有讀很懂, 聽起來意思好像是說必須曾遭狼吻才會得到「通過!」的標章。
Pod2G 跟 GG 不只指出 iMessage 的後門, 也分享 iMITMProtect 這支程式幫 iPhone/iPad 的用戶堵住這個後門。 不過它只能安裝在越獄 (jail break) 過的裝置上面; 當然, 如果你堅持不肯越獄, 堅持選擇相信蘋果和行政院的建議: 「越獄是很危險的...」 那麼就只好接受這個後門的存在吧。 再一次地, 蘋果和微軟口中的安全, 其實真正的用意是要你棄權。 抱歉, 容我一再跳針跳針重播, 因為我聽的歌實在太少, 每次看到蘋果電腦這類來陰的新聞, 就立即想到 「愛用蘋果電腦, 讓藍星 "看起來" 更美好! 裡面引用的這首歌:
Close your eyes,
For your eyes will only tell the truth,
And the truth isn't what you want to see,
In the dark it is easy to pretend,
That the truth is what it ought to be
-- "Music of the Night" 歌詞 from 歌劇魅影
* * * * *
手邊沒電腦; 口頭推薦本文嗎? 可以請您的朋友搜尋 「iMessage 後門」 或 「蘋果電腦 監聽後門」。