這兩天 XcodeGhost 問題搞得國內所有 iOS 開發者人心惶惶,如果你在編譯和上線 APP 時,使用的是非官方下載的 Xcode 話,編譯出來的 app 會被注入一段惡意代碼,惡意代碼會向特定伺服器(init.icloud-analysis.com)上傳機器相關數據,更嚴重的是變種的惡意代碼還會劫持 APP 中所有的彈出對話框。
給出一個簡單的檢查方法: 1. 進入以下目錄 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs 2. 目錄下包含以下內容,恭喜中招。正常的 Xcode 沒有的 Library/Frameworks/CoreServices.framework/CoreService
蘋果給出了驗證 Xcode 的方法,需要用戶在終端中執行下面的命令:
spctl --assess --verbose /Applications/Xcode.app
如果 Xcode 從 Mac App Store 下載,會返回:
/Applications/Xcode.app: accepted
source=Mac App Store
如果從蘋果開發者網站下載會返回:
/Applications/Xcode.app: accepted
source=Apple
或:
/Applications/Xcode.app: accepted
source=Apple System
蘋果建議開發者從 Mac App Store 或蘋果開發者網站下載 Xcode,並開啟 Gatekeeper 功能。OS X 會自動檢查應用的簽名並進行驗證。不過對開發者來說,習慣性的把 Gatekeeper 關閉,然其卵。
最後 @唐巧_boy