What You Need to Know About iOS Malware XcodeGhost

xcode-6Earlier this week, Chinese developers disclosed new iOS malware called XcodeGhost on microblogging service Sina Weibo. U.S. cybersecurity firm Palo Alto Networks has since published details about the malware.

MacRumors has created a FAQ so you can learn more about XcodeGhost and how to keep your iOS devices protected.

What is XcodeGhost?
XcodeGhost is a new iOS malware arising from a malicious version of Xcode, Apple's official tool for developing iOS and OS X apps.

How is XcodeGhost distributed?
A malicious version of Xcode was uploaded to Chinese cloud file sharing service Baidu and downloaded by some iOS developers in China.

Chinese developers then unknowingly compiled iOS apps using the modified Xcode IDE and distributed those infected apps through the App Store.

Those apps then managed to pass through Apple's code review process, enabling iOS users to install or update the infected apps on their devices.

Which devices are affected?
iPhone, iPad and iPod touch models running an iOS version compatible with any of the infected apps. The malware affects both stock and jailbroken devices.

Which apps are affected?
Palo Alto Networks has shared a full list of over 50 infected iOS apps, including WeChat, NetEase Cloud Music, WinZip, Didi Chuxing, Railway 12306, China Unicom Mobile Office and Tonghuashun.

How many users are affected?
XcodeGhost potentially affects more than 500 million iOS users, primarily because messaging app WeChat is very popular in China and the Asia-Pacific region.

Which unofficial versions of Xcode are affected?
All unofficial versions between Xcode 6.1 and Xcode 6.4.

How does XcodeGhost put my iOS devices at risk?
iOS apps infected with XcodeGhost malware can and do collect information about devices and then encrypt and upload that data to command and control (C2) servers run by attackers through the HTTP protocol. The system and app information that can be collected includes:

  • Current time

  • Current infected app’s name

  • The app’s bundle identifier

  • Current device’s name and type

  • Current system’s language and country

  • Current device’s UUID

  • Network type

    Palo Alto Networks also discovered that infected iOS apps can receive commands from the attacker through the C2 server to perform the following actions:

  • Prompt a fake alert dialog to phish user credentials;

  • Hijack opening specific URLs based on their scheme, which could allow for exploitation of vulnerabilities in the iOS system or other iOS apps;

  • Read and write data in the user’s clipboard, which could be used to read the user’s password if that password is copied from a password management tool.

    Can XcodeGhost affect users outside of China?
    Yes. Some of the iOS apps infected with XcodeGhost malware are available on the App Store in countries outside of China. CamCard, for example, is a popular business card reader and scanner app available in the United States and several other countries, while WeChat is a popular messaging app in the Asia-Pacific region.

    Why would some Chinese developers download Xcode from Baidu?
    Xcode is a large file that can take a long time to download from Apple's servers in China, leading some developers to download Xcode from unofficial sources.

    How are Apple and Chinese developers dealing with XcodeGhost?
    Palo Alto Networks claims that it is cooperating with Apple on the issue, while multiple developers have updated their apps to remove the malware.

    Apple has since issued the following statement to Reuters:

    "We’ve removed the apps from the App Store that we know have been created with this counterfeit software. We are working with the developers to make sure they’re using the proper version of Xcode to rebuild their apps."

    How do I protect myself against XcodeGhost?
    iOS users should immediately uninstall any infected iOS app listed here on their devices, or update to a newer version that has removed the malware. Resetting your iCloud password, and any other passwords inputted on your iOS device, is also strongly recommended as a precautionary measure.

    Developers should install official versions of Xcode 7 or Xcode 7.1 beta from Apple's website for free and avoid downloading the software from unofficial sources.

  • Top Rated Comments

    (View all)
    Avatar
    65 months ago

    darn it, I thought only android gets malware.

    wechat is used in many countires :(

    Seriously what developer who knows anything about security is going to download an IDE from a non official source?

    That's like downloading an OS from The Pirate Bay and being shocked the file was injected with malicious code.
    Score: 63 Votes (Like | Disagree)
    Avatar
    65 months ago
    i'm sorry but how can a developer be such an idiot (please don't ban me, there's no other word to describe patient's condition) to download Xcode from a chinese cloud file sharing service????
    Score: 56 Votes (Like | Disagree)
    Avatar
    65 months ago

    How do I protect myself against XcodeGhost?
    iOS users should immediately uninstall any infected iOS app listed here ('http://researchcenter.paloaltonetworks.com/2015/09/malware-xcodeghost-infects-39-ios-apps-including-wechat-affecting-hundreds-of-millions-of-users/') on their devices, or update to a newer version that has removed the malware. Resetting your iCloud password, and any other passwords inputted on your iOS device, is also strongly recommended as a precautionary measure.

    My thought is I am all done with any company that would use an Xcode version they got from a file sharing site rather than Apple directly. I would never trust them again.
    Score: 48 Votes (Like | Disagree)
    Avatar
    65 months ago

    Can't you just list all 39 apps? Looks like the servers from Palo Alto Networks can't handle it.

    Infected iOS apps
    网易云音乐 2.8.3
    微信 6.2.5
    讯飞输入法 5.1.1463
    滴滴出行 4.0.0.6-4.0.0.0
    滴滴打车 3.9.7.1 – 3.9.7
    铁路12306 4.5
    下厨房 4.3.2
    51卡保险箱 5.0.1
    中信银行动卡空间 3.3.12
    中国联通手机营业厅 3.2
    高德地图 7.3.8
    简书 2.9.1
    开眼 1.8.0
    Lifesmart 1.0.44
    网易公开课 4.2.8
    马拉马拉 1.1.0
    药给力 1.12.1
    喜马拉雅 4.3.8
    口袋记账 1.6.0
    同花顺 9.60.01
    快速问医生 7.73
    懒人周末
    微博相机
    豆瓣阅读
    CamScanner
    CamCard
    SegmentFault 2.8
    炒股公开课
    股市热点
    新三板
    滴滴司机
    OPlayer 2.1.05
    电话归属地助手 3.6.5
    愤怒的小鸟2 2.1.1
    夫妻床头话 1.2
    穷游 6.6.6
    我叫MT 5.0.1
    我叫MT 2 1.10.5
    自由之战 1.1.0

    Fox-IT (fox-it.com ('http://fox-it.com/')), a Netherlands based security company, checked all C2 domain names from our reports in their network sensors and has found thousands of malicious traffic outside China. According to their data, these iOS apps were also infected:

    Mercury
    WinZip
    Musical.ly
    PDFReader
    guaji_gangtai en
    Perfect365
    网易云音乐
    PDFReader Free
    WhiteTile
    IHexin
    WinZip Standard
    MoreLikers2
    CamScanner Lite
    MobileTicket
    iVMS-4500
    OPlayer Lite
    QYER
    golfsense
    同花顺
    ting
    installer
    下厨房
    golfsensehd
    Wallpapers10000
    CSMBP-AppStore
    礼包助手
    MSL108
    ChinaUnicom3.x
    TinyDeal.com
    snapgrab copy
    iOBD2
    PocketScanner
    CuteCUT
    AmHexinForPad
    SuperJewelsQuest2
    air2
    InstaFollower
    CamScanner Pro
    baba
    WeLoop
    DataMonitor
    爱推
    MSL070
    nice dev
    immtdchs
    OPlayer
    FlappyCircle
    高德地图
    BiaoQingBao
    SaveSnap
    WeChat
    Guitar Master
    jin
    WinZip Sector
    Quick Save
    CamCard
    Score: 28 Votes (Like | Disagree)
    Avatar
    65 months ago
    So... It begins.

    iOS has been breached through the one thing that kept us safe. The App Store.
    Score: 27 Votes (Like | Disagree)
    Avatar
    65 months ago

    I don't think that's a correct analysis of the situation.
    What has really happened here? Developers have used the wrong tool (we'll discuss that later) and that tool has embedded some unwanted additional code in their apps. BUT look what still worked
    - each broken app STILL has to be submitted to the app store, with identification and an audit trail

    - even when the app is on an iOS device, there are severe limits to what it can do. It still can't break out of the OS protections, randomly control the device, etc. The type of info being sent back to base is, let's face it, not THAT serious --- not ideal, but not control of the machine.

    - The items that ARE problematic (and which Apple should work on fixing) are items that were problematic before we knew about this, and that have been used in other contexts --- the ability to phish for passwords by throwing up fake dialog boxes, and the way the current sandboxing FORCES Password apps like 1Password to transfer data over the Clipboard.

    What this REALLY provides is a way to throw out a bunch of these phishing scams in a way that can't be traced back to the real scammer; only to the developer using the wrong tool.

    Which gets us to that issue. I don't know enough about XCode to know what was and was not breached on that front. Obviously the entire XCode package should be signed, and obviously if you're stupid enough to install an XCode package that complains about being unsigned, you're setting yourself up for trouble. But blaming the victim, especially when the security landscape changes every year is not helpful --- how could Apple do better?
    You can't really avoid people being able to write their own compilers and dev tools, and you can't stop those dev tools from doing god knows what to the code they create --- this has been known since Pike's infamous C compiler of the early seventies.
    What you SHOULD be able to do is not allow code that has been created by such dev tools into the app store. THAT seems to be the flaw that needs to be fixed --- that any tool that's generating binaries that will land up in the store needs to be provably signed. But I don't know how feasible that is. Obviously the last stage (the actual store submitter app) is provided by Apple and signed, and using the developers signature. But what about the linker beforehand? And the compiler before that? And you then need the binaries passed between the two to be encrypted? It's just totally inimical to the current expected model of how we code.

    So what about at a higher level? Do something that's a ugly hack, but basically FORCE that any installer that calls itself "XCode" has to be signed no matter what? That's one package that you can't install regardless of your GateKeeper settings except from Apple. But then you get a wack-a-mole of packages called "XCode 7" and "XCode!" and "XCode Pro".

    Good analysis, but there is something Apple could have done, and I have been saying as much for over a year. Here's the more strongly worded one:

    They should ban their in-house teams from throwing up a password request box. Absolute ban. It has got out of hand recently with stock apps asking for the password without any justification or explanation and pretty much at random. I've said it over and over, Apple have been training their users for exactly this scenario - enter password whenever anyone asks. If an app needs the iCloud password it should instruct the user to enter it in the appropriate settings page. Train users: only the settings app should be trusted with passwords.
    Score: 26 Votes (Like | Disagree)

    Top Stories

    Here's How You Can Download iOS 14 and iPadOS 14 Around the World [It's Out]

    Wednesday September 16, 2020 2:36 am PDT by
    Apple's official public release of iOS 14 and iPadOS 14 dropped on Wednesday, September 16, just a day after the company released the Golden Master to third-party developers. Also set to be made available to the general public for the first time are watchOS 7 and tvOS 14. Getting Started With iOS 14 Video Click image to watch iOS 14 Getting Started While that's left a lot of developers...

    When Will the iPhone 12 Launch? Here's What We Know

    Wednesday September 16, 2020 6:12 am PDT by
    Yesterday's "Time Flies" Apple event saw the release of the Apple Watch Series 6, Apple Watch SE, iPad 8, and iPad Air 4, but no new iPhone models. Rumors before the event strongly alleged that it would not see the unveiling of new iPhones, with many reports pointing to an October launch. The lack of new iPhone models yesterday seems to confirm that the iPhone 12 lineup will not appear...

    Apple Releases iOS 14 and iPadOS 14 With Home Screen Redesign, App Library, Compact UI, Translate App, Scribble Support, App Clips, and More

    Wednesday September 16, 2020 12:48 pm PDT by
    Apple has released iOS 14 and iPadOS 14, the newest operating system updates designed for the iPhone and iPad. As with all of Apple's software updates, iOS 14 and iPadOS 14 can be downloaded for free. iOS 14 is available on the iPhone 6s and later, while iPadOS 14 is available on the iPad Air 2 and later. The updates are available on all eligible devices over-the-air in the Settings app. To ...

    Apple Releases Safari 14 for Mac Ahead of macOS Big Sur Launch

    Wednesday September 16, 2020 1:40 pm PDT by
    macOS Big Sur didn't launch alongside iOS 14, iPadOS 14, tvOS 14, and watchOS 7 today, with the update coming later this fall, but Apple did release the Safari 14 update for macOS Catalina and macOS Mojave users. Safari 14 brings improved performance, customizable start pages, a Privacy Report to see which cross-site trackers are being blocked, and a new tab bar design that provides tab...

    Apple Updates AirPods 2 and AirPods Pro Firmware to Version 3A283

    Monday September 14, 2020 11:24 am PDT by
    Apple today released new 3A283 firmware updates for the second-generation AirPods and the AirPods Pro. The second-generation AirPods are being updated from the 2D15 firmware they were previously running, while the AirPods Pros are being updated from the 2D27 firmware they had installed previously. Apple does not provide details on what's included in refreshed firmware so we don't know what's ...

    Spotify Says Apple One Bundle Will Cause 'Irreparable Harm to Developer Community'

    Tuesday September 15, 2020 12:26 pm PDT by
    Apple today announced Apple One, a series of new subscription bundles that provide access to various Apple services at a combined monthly price. In response, Spotify sent out statements (via Peter Kafka) to the press decrying Apple's anti-competitive behavior and calling on "competition authorities" to stop Apple before it is able to cause "irreparable harm" to developers.Once again, Apple...

    Apple Releases watchOS 7 With New Watch Faces, Family Setup, Sleep Tracking, Handwashing Help and More

    Wednesday September 16, 2020 12:47 pm PDT by
    Apple today released watchOS 7, the newest version of the watchOS operating system designed to run on modern Apple Watch models. The watchOS 7 update comes after several months of beta testing. ‌watchOS 7‌ can be downloaded for free through the dedicated Apple Watch app on the iPhone by going to General > Software Update. To install the new software, the Apple Watch needs to have at...

    New AirPods Pro Firmware Introduces Spatial Audio Support and Automatic Switching

    Monday September 14, 2020 12:22 pm PDT by
    The new 3A283 firmware that Apple released for the AirPods Pro today appears to introduce support for Spatial Audio, a new feature coming to the higher-end AirPods with iOS 14. Multiple reports on Twitter and the MacRumors forums indicate that the firmware update adds a "Spatial Audio" option to the Control Center, which can be activated to enable the feature. Note that using Spatial Audio...

    Here Are All of the New Apple Watch Faces Apple Announced Today

    Tuesday September 15, 2020 2:55 pm PDT by
    Apple today announced the Apple Watch Series 6 and the Apple Watch SE, both of which will be compatible with new watch faces that are being introduced in the watchOS 7 update set to be released tomorrow. Apple has provided a video highlighting all of the new Apple Watch faces, with details on each one. GMT - The GMT face shows multiple time zones at once, while also taking into...

    iOS 14.2 Beta Adds New Shazam Music Recognition Feature for Control Center

    Thursday September 17, 2020 3:36 pm PDT by
    Apple today released the first beta of iOS 14.2 to developers for testing purposes, and the new update introduces a Music Recognition control for the Control Center. The new feature lets you discover music playing around you and it recognizes the music playing with in apps, even when you're wearing AirPods. Songs pop up as notifications, and you can tap to listen in Apple Music....