XCodeGhost

野生的世界 2015-11-05

XCodeGhost源码:

https://github.com/XcodeGhostSource/XcodeGhost

XCodeGhost攻击原理:

从传统的利用应用漏洞攻击转为利用编程语言灵活性及开发工具配置修改的攻击,攻击手法隐蔽,攻击代码逆向分析非常具有迷惑性。

#本次攻击不是利用某个应用的漏洞进行攻击,而是修改XCode软件的加载动态库配置文件(具体哪个文件不介绍了,毕竟知道的人越少越好),使得所有使用被修改过的XCode软件开发的APP都被感染。

#利用Object-C的扩展类功能从而重写UIWindow父类的makeKeyAndVisible函数,从而导致在系统应用启动时调用自己写的makeKeyAndVisible函数从而启动恶意代码。其它面向对象语言如Java,C++没有此功能。

XCodeGhost检查及防范:

1、检查Xcode

检测方式是恶意 Xcode 包含有如下文件:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/CoreService

正常的 Xcode 下面无 Library 目录,为如下形式:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

命令查找

find /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs  –name "CoreService"

为了防止app被插入恶意库文件,开发者除了检测”/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs” 目录下是否有可疑的framework文件之外,还应该检测一下Target->Build Setting->Search Paths->Framework Search Paths中的设置。看看是否有可疑的frameworks混杂其中:

另外因为最近iOS dylib病毒也十分泛滥,为了防止开发者中招,支付宝的小伙伴还提供了一个防止被dylib hook的小技巧:在Build Settings中找到“Other Linker Flags”在其中加上”-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null”即可。

很多开发者们担心最近下载的Xcode 7也不安全。这里笔者没有使用任何下载工具的情况在苹果官网上下载了Xcode_7.dmg并计算了sha1的值。

http://adcdownload.apple.com/Developer_Tools/Xcode_7/Xcode_7.dmg

$ shasum Xcode_7.dmg

4afc067e5fc9266413c157167a123c8cdfdfb15e  Xcode_7.dmg

 建议从mac app store下载Xcode,检查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 

2、检查app,framework

find . -type f |xargs grep "http://init.icloud-analysis.com"

参考:

警惕 Xcode 木马!

Xcode编译器里有鬼 – XcodeGhost 样本分析

XcodeGhost截胡攻击和服务端的复现,以及UnityGhost预警

 参考ppt(附件)

相关推荐

APCDE / 0评论 2019-12-01
野生的世界 / 0评论 2015-10-29