这两天 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